[英]Should pydoc document automatically created file?
我试图了解pydoc
工作原理,并希望让它显示文件的文档字符串。
我有一个未更改的文件urls.py
(使用 Django 创建,但这似乎与我的pydoc
问题无关):
"""box_whiskers_demo URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/3.1/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
但是在python提示符下发出以下命令
import urls
给我错误消息django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
. 我所期望的是,同样,命令
from urls import urlpatterns
给了我完全相同的错误信息。
我想我可以让 Python 读取文件,然后访问文档字符串,就像我可以的那样
import pydoc
help(pydoc)
后者输出有意义的、无错误的文档。 知道文件urls.py
不是模块,我读了
如果 pydoc 的参数看起来像一个路径(也就是说,它包含操作系统的路径分隔符,例如 Unix 中的斜杠),并且引用了现有的 Python 源文件,则为该文件生成文档。
在pydoc 文档中,“那个文件”有一个很好的多行文档字符串。
错误是否意味着“那个文件”既不是
函数、模块或包的名称
还是错误源自其他地方? 我应该期待 docstring 作为这些pydoc
调用中的任何一个的输出吗?
我想我设法确定了这个问题:当 Python 寻找admin
包但没有找到时,问题就开始了。 因此,注释掉调用admin.
的语句admin.
, 使用
urlpatterns = [
# path('admin/', admin.site.urls),
]
我来自bash
电话
pydoc urls
给了我漂亮的文档字符串:
Help on module urls:
NAME
urls - box_whiskers_demo URL Configuration
DESCRIPTION
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/3.1/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
DATA
path = functools.partial(<function _path at 0x7f3c9b88d...ern=<class '...
urlpatterns = []
FILE
/home/morten/Dropbox/Python/django/box_whiskers_demo/box_whiskers_demo/urls.py
(END)
注意,我从 python 命令中获得了完全相同的输出,并且具有以下序列:
import urls
help(urls)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.