Python:什么是头?

Python:什么是头?,python,header,Python,Header,我对Python和一般编程都是新手。我正在大学学习一个模块,它要求我用Python编写一些相当基本的程序。然而,我在上一次任务中得到了以下反馈: 应该有一个包含文件名、作者名、创建日期、修改日期和python版本的头块 什么是标题块?它只是代码顶部的注释,还是在程序运行时打印出来的?还是别的什么?在这种情况下,你是对的。标题块是指源文件顶部包含请求信息的一组注释。它不需要包含任何可以执行任何操作的代码。您的讲师希望您在作业的源代码顶部添加一些信息,如下图所示,因此您是对的,您将添加注释: ###

我对Python和一般编程都是新手。我正在大学学习一个模块,它要求我用Python编写一些相当基本的程序。然而,我在上一次任务中得到了以下反馈:

应该有一个包含文件名、作者名、创建日期、修改日期和python版本的头块


什么是标题块?它只是代码顶部的注释,还是在程序运行时打印出来的?还是别的什么?

在这种情况下,你是对的。标题块是指源文件顶部包含请求信息的一组注释。它不需要包含任何可以执行任何操作的代码。

您的讲师希望您在作业的源代码顶部添加一些信息,如下图所示,因此您是对的,您将添加注释:

####################################
# File name: ...                   #
# Author: ...                      #
# Submission:                      #
# Instructor:                      #
####################################

标题块只是代码顶部的注释。程序运行时它不会打印

示例如下所示:

# File name: test.py
# Author: Peter Test
# Date created: 4/20/2013
# Date last modified: 4/25/2013
# Python Version: 2.7

# Begin code

a = 1
b = 2

c = a + b

print c
有一个叫做(这里有一些关于如何编写python代码的常规)的东西,由三重单引号
'
或三重双引号
''转义,非常适合多行注释:

####################################
# File name: ...                   #
# Author: ...                      #
# Submission:                      #
# Instructor:                      #
####################################
“”
文件名:test.py
作者:Peter Test
创建日期:2013年4月20日
上次修改日期:2013年4月25日
Python版本:2.7
'''
您也可以在以后(编程模块时)使用专用于包含以下信息的特殊变量:

\uuuu作者=“罗伯·奈特、加文·赫特莱和彼得·麦克斯韦”
__版权所有\=“版权所有2007,Cogent项目”
__信用卡[罗布·奈特”,“彼得·麦克斯韦”,“加文·哈特利”,
“马修·韦克菲尔德”]
__许可证\=“GPL”
__版本\=“1.0.1”
__维护人员=“Rob Knight”
__电子邮件\ \“rob@spot.colorado.edu"
__状态=“生产”

更多详细信息请参见。

这里的讨论非常好-->

Python文档字符串应该简洁,并且不包含修订历史,或者任何与当前版本行为没有直接关系的内容

花盒的修订历史独立于源代码管理(因为某些修订最终可能会比源代码管理更早),可以追溯到阅读书面代码或电子邮件的时代。我们并不总是像现在这样相互联系

使用现代IDE已经不受欢迎,但在较旧/较大的高级作品中可以看到。在一些商店中,登录不是由编码人员执行的,特别是如果代码已被“购买出去”。一些登录者以懒散、邋遢的方式进行评论

因此情况有所不同,但:

#! /usr/bin/python
#--------------------------------#
# optional flower box  
#--------------------------------#
""" 
Multiple lines of doc if required
"""

import foo
import bar

__metastuff__ = 'some value'
我在上面看到了“meta”,尤其是在youtube上的“pycharm”宣传片中“。人们喜欢在导入下面看到它,因为它实际上是代码,并且导入应该在代码之前。我可以想象它会变得很容易失控。低级代码中的合理和信息丰富的注释比楼上编写的注释更有价值

在现实世界中,只要做其他人在你的项目中所做的事情,你就会很好。不管怎样,重复使用模板或从“原型”复制粘贴(即抄袭)都是很常见的做法。

我的看法 我用这种方式,正如我所学到的,“这更多是为了我自己的理智,而不是一种需要。”

因为我喜欢连贯性。所以,我像这样开始我的文件

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# =============================================================================
# Created By  : Jeromie Kirchoff
# Created Date: Mon August 18 18:54:00 PDT 2018
# =============================================================================
"""The Module Has Been Build for..."""
# =============================================================================
# Imports
# =============================================================================
from ... import ...
<more code...>
如果您正在寻找过度杀伤力: 或者python使用

标准模块级Dunder名称 添加您自己的自定义名称: 然后,如果讲师愿意,只需添加一点代码即可打印

print('# ' + '=' * 78)
print('Author: ' + __author__)
print('Teammates: ' + ', '.join(__teammates__))
print('Copyright: ' + __copyright__)
print('Credits: ' + ', '.join(__credits__))
print('License: ' + __license__)
print('Version: ' + __version__)
print('Maintainer: ' + __maintainer__)
print('Email: ' + __email__)
print('Status: ' + __status__)
print('Course: ' + __course__)
print('Laboratory: ' + __laboratory__)
print('Date: ' + __date__)
print('Username: ' + __username__)
print('Description: ' + __description__)
print('# ' + '=' * 78)
最终结果 每次调用程序时,它都会显示列表

$ python3 custom_header.py
# ==============================================================================
Author: Jeromie Kirchoff
Teammates: Jeromie Kirchoff
Copyright: Copyright 2018, Your Project
Credits: Jeromie Kirchoff, Victoria Mackie
License: MSU
Version: 1.0.1
Maintainer: Jeromie Kirchoff
Email: Jahomie04@gmail.com
Status: Prototype
Course: CS108
Laboratory: A13
Date: 2018/08/18
Username: JayRizzo
Description: My First Project Program.
# ==============================================================================
注意:如果您展开程序,只需在init.py中设置一次,就可以全部设置完毕,但请再次与教授联系


佐伊德伯格为什么不呢?我是说。我认为这是一个基本的介绍性编程作业,因此添加常用的注释就足够了,但她肯定应该知道docstring.maybe@Vyktor Nope的副本。OP可能很有用,但这是一个不同的问题。可能是重复的
print('# ' + '=' * 78)
print('Author: ' + __author__)
print('Teammates: ' + ', '.join(__teammates__))
print('Copyright: ' + __copyright__)
print('Credits: ' + ', '.join(__credits__))
print('License: ' + __license__)
print('Version: ' + __version__)
print('Maintainer: ' + __maintainer__)
print('Email: ' + __email__)
print('Status: ' + __status__)
print('Course: ' + __course__)
print('Laboratory: ' + __laboratory__)
print('Date: ' + __date__)
print('Username: ' + __username__)
print('Description: ' + __description__)
print('# ' + '=' * 78)
$ python3 custom_header.py
# ==============================================================================
Author: Jeromie Kirchoff
Teammates: Jeromie Kirchoff
Copyright: Copyright 2018, Your Project
Credits: Jeromie Kirchoff, Victoria Mackie
License: MSU
Version: 1.0.1
Maintainer: Jeromie Kirchoff
Email: Jahomie04@gmail.com
Status: Prototype
Course: CS108
Laboratory: A13
Date: 2018/08/18
Username: JayRizzo
Description: My First Project Program.
# ==============================================================================