- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
在python(和其他一些语言)中,我了解到,一个类的名称应该用小写字母写,除了每个单词的第一个字母应该是大写字母。示例:
class FooBar:
...
一个类应该放在一个文件中,与该类同名。在本例中,它将是一个文件 foobar.py
。如果我想在某处导入类 foo
我必须这样做:
from foobar import FooBar
这个约定让我有点困惑。我的直觉告诉我,如果文件名表示一个类,那么它的第一个字母也应该大写,比如 FooBar.py
。这在文件名中看起来并不漂亮。也许有人可以告诉我这个标准约定是什么?
我希望我的问题可以理解。 :-)
最佳答案
您介绍的是标准约定。
Package and Module Names
Modules should have short, all-lowercase names. Underscores can be used in the module name if it improves readability. Python packages should also have short, all-lowercase names, although the use of underscores is discouraged.
Since module names are mapped to file names, and some file systems are case insensitive and truncate long names, it is important that module names be chosen to be fairly short -- this won't be a problem on Unix, but it may be a problem when the code is transported to older Mac or Windows versions, or DOS.
When an extension module written in C or C++ has an accompanying Python module that provides a higher level (e.g. more object oriented) interface, the C/C++ module has a leading underscore (e.g.
_socket
).Class Names
Almost without exception, class names use the CapWords convention. Classes for internal use have a leading underscore in addition.
参见例如
from configparser import ConfigParser
(顺便说一下,在 Python 2.x 中是 ConfigParser,但在 3.x 中改为小写)。
关于python - 在 python 中命名类和命名它们的文件之间的关联(约定?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5978557/
假设我有一个函数,例如 f(x,y)但y参数是可选的。设置y的首选方式是什么?作为可选参数?对我有用的一种选择: function f(x, y=nothing) # do stuff
在学习核心动画时,我很快就了解到,如果你做得不对,你会得到非常奇怪的未定义行为。为此,我有几个问题可以帮助我从概念上更好地理解它。 我的 NSView 子类在其 init.h 中声明以下内容:该 Vi
我一直在尝试学习 ClojureScript,并偶然发现了一些非常神秘的函数名称。 例如: (.-length str) 来自 om 文档: (defn add-contact [data owner
我对此很好奇。我最近想到使用大括号来隔离代码段,以进行可视化组织,并将变量隔离到特定范围(如果只是为了防止它们在较大的函数中混淆 Eclipse 中的建议)。例如: public void start
所以我进行了一些搜索,但在 Google 或 PEP 上找不到任何讨论此问题的内容。 我正在使用 tkinter 做一个项目,我有一个文件,它是项目的一部分,只有 200 行代码(不包括所有注释掉的代
根据某种不成文的约定,所有 API key 都是十六进制数字吗? 最佳答案 对一些半随机数据(例如时间戳 + 用户 ID + key )进行 md5 哈希是一种快速生成难以猜测的固定长度 key 的方
在 C 中,如果编译器想要提供实现定义的标识符(语言扩展、内在函数、伪函数和伪宏,基本上任何不是语言标准保留关键字但也不是常规函数的东西)惯例是名称以下划线为前缀;据了解,代码不应出于正常目的使用此类
Java Bean 的约定之一是: setter 的返回类型必须是 void。 或者至少大多数人是这么说的。我的问题是:它真的必须无效吗?我喜欢返回 "this" 而不是 "void" 因为我可以像这
我对 Java 编码风格有疑问。 我编码: public class Pattern { public Pattern(...) { ... } public static List
我有一个关于 Java servlet 约定的问题。在查看 servlet 的任何教程时,无论是 Eclipse、NetBeans 等,它们总是让您创建一个 index.jsp 页面。创建页面后,他们
在 python 中,当变量名与保留字冲突时(如 class、in、default 等),PEP8约定规定应使用尾随下划线(class_、in_、default_)。 对于相同的情况,共享最多的 ja
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 5 年前。 Improve
Java 存储预定义字符串集的主要约定是什么?现在我有一个包含我使用的所有字符串的类,但感觉确实有更好的方法来做到这一点。 这就是我在 my_strings.java 类中所做的 public fin
我经常需要检索结果并按给定列访问它们。 有没有一种方法可以不用每次都遍历整个数据集来编写它? 我研究了各种 PDO 获取模式,但没有发现比这更简单的模式。谢谢。 function get_groups
所以我正在制作这个 android 应用程序,它需要从用户提供的 CSV 文件中读取数据。 CSV 文件在台式电脑上编辑起来更舒服,所以我在应用程序中没有编辑器,它是“只读”的;我假设手机的 SD 卡
我正在编写一个文件,该文件是 npycurses module 的子类 npycurses.ActionFormV2 ,我正在覆盖 beforeEditing method ,所以当我整理我的文件时,
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
我正在开发一个可在 iPhone、iPad 和其他移动设备上运行的网页。我很好奇是否有关于移动设备 CSS 最佳实践的资源。 我试过搜索,但想出了随机网站 with tidbits of inform
我发现开始编程时最大的挑战之一是掌握文件路径。例如,当您引用目录结构中同一级别的文件夹中的路径时,您将看到: /folder/style.css 或 文件夹/style.css等 当您引用不同的文件时
如果我有如下函数: def foo(): return 1, 2 我通常会这样调用函数: g, f = foo() 但是,如果我从不打算使用返回的第二个值,是否有一种调用函数的方法可以明确说明
我是一名优秀的程序员,十分优秀!