py文件推荐的文件头

转载:http://www.cnblogs.com/harrychinese/archive/2010/12/27/heading_comment_for_py_file.html

经过2周的环境准备以及资料整理, 越来越喜欢 python 了. 原因有几个: 
其一, python 的语言确实很酷, 这年头动态语言比较时髦嘛, 我也是爱时髦的
其二, python 开发桌面程序很方便, 而且跨平台.  
其三, 相对于ruby, python 发展时间比较长, 可供选择的开源的程序库非常多, 
其四, 我想研究一个成熟的 web 框架, 那就选 Django 吧

 

这是我的 Python 学习中的第一篇 blog, 学习一个新的东西, 关键是将基础打好, 规矩也很重要, 一个py文件推荐以下面代码开头,

#! /usr/bin/env python
# -*- coding: utf-8 -*-

第一行, 加上这行, 这个py就处于了可执行模式下, (当然是针对linux类的操作系统),  这个hint, 告诉操作系统要使用哪个python解释器来执行这个py. 在linux上执行一下命令 /usr/bin/env python ,就知道这行其实是call一下python解释器.  这种写法比#! /usr/bin/python要好, 后者是hard coding 了python的路径.

第二行, 是告诉python解释器, 应该以utf-8编码来解释py文件, 对于python 2.6/2.7, 如果程序中包含中文字符, 又没有这一行, 运行将会报错. 但python3.1没有这行, 也会成功运行的.

说到encoding, pydev 1.6.3 尚不能debug 文件名包含中文字符的py.  
另外, pydev最新版1.6.3.2010100513能运行python3.1的py, 但不能debug.  而 aptana 3自带的1.6.3.2010100422却能够debug, 看来pydev对python3的支持还不是很好.



<think>好的,用户想了解如何正确编写Python文件的头部注释和声明。根据他们提供的引用资料,主要涉及编码声明、脚本解释器路径以及自动添加头部注释的方法。首先,我需要整理这些信息,分点说明。 首先,编码声明,比如# -*- coding: utf-8 -*-,这个是为了指定文件使用UTF-8编码,避免中文乱码问题。虽然Python 3默认是UTF-8,但为了兼容旧版本或明确声明,还是有必要的。用户提供的引用[1]、[2]都提到了这点。 然后是脚本解释器路径,即#!/usr/bin/env python,这在Unix/Linux系统中让脚本可以直接运行。需要根据实际情况选择python3还是python,引用[1]也提到了这个部分。 接下来是头部注释的内容,用户提到的引用[3]、[4]讨论了自动添加的方法,比如文件名称、作者、创建时间等信息。这部分可能需要使用VS Code的插件或配置模板来自动生成,比如使用File Header插件。 另外,需要提醒用户注意编码声明和解释器路径的顺序,通常编码声明在前,但引用[1]的例子是解释器路径在前,编码声明在后,所以需要确认正确的顺序。正确的顺序应该是解释器路径在第一行,编码声明在第二行,或者合并到同一行,但分开更常见。 然后,生成相关问题时要围绕这些要点,比如编码声明的作用、解释器路径的重要性、自动添加工具等。确保问题覆盖用户可能关心的其他方面,比如不同操作系统的注意事项或者版本差异。 最后,检查是否有遗漏的信息,比如引用中提到的VS Code配置方法,是否需要详细步骤?但用户主要问的是如何正确编写,所以可能不需要深入配置细节,但相关问题可以引导到那里。需要确保回答结构清晰,分点明确,引用正确。</think>### Python文件头部编写规范 Python文件的头部注释和声明主要包括**编码声明**、**解释器路径**和**文件元信息**三部分,具体编写方法如下: --- #### 一、编码声明(必需) 在文件首行或第二行添加编码声明,防止中文乱码: ```python # -*- coding: utf-8 -*- ``` 或简写形式: ```python # coding=utf-8 ``` - **作用**:明确文件字符编码,Python 3默认UTF-8,但显式声明可兼容旧版本[^1][^2]。 - **注意**:若首行为解释器路径,则编码声明放在第二行。 --- #### 二、解释器路径(Linux/Unix环境建议) 在首行指定Python解释器路径,使脚本可直接执行: ```python #!/usr/bin/env python3 ``` - **适用场景**:Linux/Unix系统中直接通过`./script.py`运行文件[^1]。 - **灵活选择**:根据环境使用`python`或`python3`。 --- #### 三、文件元信息注释(推荐) 添加作者、时间、功能等描述,例如: ```python """ @FileName: demo.py @Author: YourName @Created: 2023-10-01 @Desc: 示例文件 """ ``` - **自动化工具**:VS Code可通过插件(如`File Header`)自动生成模板[^3][^4]。 --- ### 完整示例 ```python #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ @FileName: data_analysis.py @Author: ZhangSan @Created: 2023-10-01 @Last Modified: 2023-10-05 @Desc: 数据分析模块 """ ``` --- ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值