Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django app.py删除配置中的下划线_Python_Django_Naming Conventions - Fatal编程技术网

Python Django app.py删除配置中的下划线

Python Django app.py删除配置中的下划线,python,django,naming-conventions,Python,Django,Naming Conventions,PEP 8说:“模块应该有短的、全小写的名称。如果可以提高可读性,可以在模块名称中使用下划线。Python包也应该有短的、全小写的名称,尽管不鼓励使用下划线。” 我正在做一个教育项目,最终可以上很多课。有时一个应用程序可以提供数千个课程(即拼写),但仍然可能有许多应用程序。为了便于阅读,小写下划线显得至关重要 当我在应用程序名中使用下划线时,例如顺时针\u计数器,“python manage.py startap顺时针\u计数器”会在apps.py中构造类名时删除下划线。类名变为 “类Clock

PEP 8说:“模块应该有短的、全小写的名称。如果可以提高可读性,可以在模块名称中使用下划线。Python包也应该有短的、全小写的名称,尽管不鼓励使用下划线。”

我正在做一个教育项目,最终可以上很多课。有时一个应用程序可以提供数千个课程(即拼写),但仍然可能有许多应用程序。为了便于阅读,小写下划线显得至关重要

当我在应用程序名中使用下划线时,例如顺时针\u计数器,“python manage.py startap顺时针\u计数器”会在apps.py中构造类名时删除下划线。类名变为 “类ClockwiseCounterConfig(AppConfig): 名称=‘顺时针_计数器’

这给我带来了很多困惑,直到我学会通过删除下划线将apps.py类名复制到settings.py的INSTALLED_apps部分

我的问题是:

  • 为什么政治公众人物第8版不鼓励使用下划线?是否真的有一个很好的理由,或者只是过去某个时候的个人偏好

  • 我现在或将来在应用程序名称中使用下划线以提高可读性可能会有问题吗


  • 这是一种标准行为,而不是bug。模块或包名称中的下划线是合法的,因此您可以在这些名称中添加下划线

    另一方面,拥有一个
    顺时针\u逆时针\u配置
    类在某种程度上是丑陋的(但它可以工作)


    啊,
    INSTALLED_APPS
    设置是应用程序包的列表(或序列),而不是类名。

    这是标准行为,不是bug。模块或包名称中的下划线是合法的,因此您可以在这些名称中添加下划线

    另一方面,拥有一个
    顺时针\u逆时针\u配置
    类在某种程度上是丑陋的(但它可以工作)


    啊,
    INSTALLED_APPS
    settings是应用程序包的列表(或序列)虚线名称,而不是类名。

    不清楚你在问什么
    顺时针\逆时针
    是应用程序名,但
    ClockwiseCounterConfig
    是类名,因此遵循PEP8对类的建议。大多数网站只有几页到几百页。一个在网络上发布的教育计划可能有一万页甚至十万页。使用下划线使应用程序名称与主题的分类法具有合理的相似性似乎是有意义的。否则,应用程序名称将与主题分类法无关。我不知道这与什么有关系。应用程序配置是类,它们是以可预测和可重复的方式从模块名称构建的。在任何情况下,页面的数量都不应与应用程序中的类数相关;如果你有十万门课,你肯定有非常非常非常错误的东西。不清楚你在问什么
    顺时针\逆时针
    是应用程序名,但
    ClockwiseCounterConfig
    是类名,因此遵循PEP8对类的建议。大多数网站只有几页到几百页。一个在网络上发布的教育计划可能有一万页甚至十万页。使用下划线使应用程序名称与主题的分类法具有合理的相似性似乎是有意义的。否则,应用程序名称将与主题分类法无关。我不知道这与什么有关系。应用程序配置是类,它们是以可预测和可重复的方式从模块名称构建的。在任何情况下,页面的数量都不应与应用程序中的类数相关;如果你有十万门课,你肯定是出了问题。