python - 这些元素在 Python 模块中的顺序应该是什么?
问题描述
如果存在,这些元素应该在 Python 模块中声明的顺序是什么?
- 哈希爆炸 (
#!/usr/bin/env python
) - 编码 (
# coding: utf-8
) - 未来进口 (
from __future__ import unicode_literals, ...
) - 文档字符串
如果最后声明,文档字符串会在调用中工作help(module)
吗?
解决方案
哈希砰。内核从字面上查看文件的前两个字节以查看它们是否等于
#!
,否则它将无法工作。编码。根据Python Language Reference,它必须在“第一行或第二行”。
文档字符串。根据PEP 257,文档字符串是“作为模块、函数、类或方法定义中的第一条语句出现的字符串文字”,因此它不能跟在任何导入语句之后。如果您将文档字符串放在其他位置,您可以亲自看到
help(module)
不再报告您的文档字符串。未来的进口,因为他们不能先于上述任何一项。
推荐阅读
- java - 在嵌套 JAR 内的文件夹中查找文件名
- html - 防止flexbox项目根据段落拉伸
- python - 如何在 python 1000 次中打印一个字符串?
- javascript - 如何在 Jquery 中使用存储过程导出 Excel 中的数据?
- python - 未定义符号:使用 numpy 和 swig 时的 PyArray_API
- applet - java卡小程序之间的死锁并且无法删除
- sql - 如何减行增列实现新视图
- node.js - 在 Node.js 中将 UInt8array 保存为 png
- c# - 禁用或隐藏自定义任务窗格关闭按钮 VSTO 插件 word 文档
- html - 如何携带