惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
C
Check Point Blog
J
Java Code Geeks
腾讯CDC
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
Engineering at Meta
Engineering at Meta
罗磊的独立博客
Last Week in AI
Last Week in AI
B
Blog
IT之家
IT之家
S
SegmentFault 最新的问题
D
DataBreaches.Net
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
GbyAI
GbyAI
博客园 - 聂微东
U
Unit 42
有赞技术团队
有赞技术团队
Y
Y Combinator Blog
MyScale Blog
MyScale Blog

卡瓦邦噶!

服务器高性能网络调优 | 卡瓦邦噶! 为何写作 | 卡瓦邦噶! 读《金阁寺》 | 卡瓦邦噶! 雨季又来 | 卡瓦邦噶! MTU Probe 引起的初始延迟 | 卡瓦邦噶! 3.5 秒的固定延迟问题 | 卡瓦邦噶! 学习网络的一点经验 | 卡瓦邦噶! ARP 问题诊断 | 卡瓦邦噶! 网络断断续续…… | 卡瓦邦噶! Piccolo P2P 镜像分发 | 卡瓦邦噶! 一起看电影 | 卡瓦邦噶! 《征服C指针》 | 卡瓦邦噶! 我的姥姥 | 卡瓦邦噶! Python的哲学 Python 3.5的新特性 学校不教的计算机课 垃圾回收(GC)的三种基本方式 在编程中体验纯粹的快乐 从《美丽新世界》谈自由 在快钱实习 迷人的嗓音和迷人的故事——《Sleepyhead》 Python 的十个自然语言处理工具 记一个愚蠢的bug 一年炉石传说的游戏体验 《以撒的结合:重生》网页版图鉴 分清 C++的指针、引用和数组 笑话三则 自由比皇帝更伟大——《悲惨世界》笔记 Git 10 周年访谈:Linus 讲述背后故事 用 0x3f3f3f3f 设定最大int值的优点
Python文件的标准顺序
laixintao · 2017-02-17 · via 卡瓦邦噶!

标准的Python文件应该按照下面的顺序来组织:

  1. 起始行(Unix shebang)
    • 有了起始行可以直接通过文件名字执行脚本
  2. 编码注释(# -*- coding: utf-8 -*-
  3. 模块文档(docstring)
  4. 从__future__导入的内容(参考PEP8):

    Python mandates that future-imports must appear in the module before any other code except docstrings.

  5. 1

    2

    3

    4

    5

    6

    7

    8

    9

    __author__ = "Rob Knight, Gavin Huttley, and Peter Maxwell"

    __copyright__ = "Copyright 2007, The Cogent Project"

    __credits__ = ["Rob Knight", "Peter Maxwell", "Gavin Huttley",

                        "Matthew Wakefield"]

    __license__ = "GPL"

    __version__ = "1.0.1"

    __maintainer__ = "Rob Knight"

    __status__ = "Production"

  6.  模块导入
    1.  标准库导入
    2. 第三方库导入
    3. 应用程序指定导入
    4. 每种分组中, 应该根据每个模块的完整包路径按字典序排序, 忽略大小写.
  7. 全局变量定义
    • 应该尽量使用局部变量代替全局变量
  8. 类定义(如果有)
  9. 函数定义
    • 模块被导入的时候,class就会执行(定义)
  10. 主程序
    • 在主程序里面写测试代码,保证每次都会通过