小编Jer*_*emy的帖子

Docstrings与评论

我对python中docstrings和comments之间的区别感到有点困惑.

在我的课堂上,我的老师介绍了一种被称为"设计方法"的东西,这一系列步骤可以帮助我们学生在Python中更好地绘制和组织编码.根据我的理解,下面是我们遵循的步骤示例 - 这就是呼叫设计配方(引文中的内容):

def term_work_mark(a0_mark, a1_mark, a2_mark, ex_mark, midterm_mark):

    ''' (float, float, float, float, float) -> float

    Takes your marks on a0_mark, a1_mark, a2_mark, ex_mark and midterm_mark, 
    calculates their respective weight contributions and sums these 
    contributions to deliver your overall term mark out of a maximum of 55 (This
    is because the exam mark is not taken account of in this function)

    >>>term_work_mark(5, 5, 5, 5, 5)
    11.8
    >>>term_work_mark(0, 0, 0, 0, 0)
    0.0
    '''

    a0_component = contribution(a0_mark, a0_max_mark, …
Run Code Online (Sandbox Code Playgroud)

python comments docstring

30
推荐指数
3
解决办法
2万
查看次数

创建一个包含四个参数的函数

是的,所以我正在完成一项家庭作业,我被要求做以下事情:

创建一个名为student data的函数,它接受四个参数,一个名称(字符串),年龄(一个整数),学号(一个字符串)以及它们是否在CSCA08中注册(一个布尔值),并返回一个包含该信息的字符串按以下格式:[学号,姓名,年龄,登记].

您的代码应该如下工作:

>>> student_data("Brian",32,"1234567",False)
`[1234567,Brian,32,False]'
>>> student_data("Nick",97,"0000001",True)
`[0000001,Nick,97,True]'
Run Code Online (Sandbox Code Playgroud)

我想出的是:

def student_data(name, age, student_number):
    return  '[' + student_number + ',' + name + ',' + str(age) + ']'
Run Code Online (Sandbox Code Playgroud)

并在将其输入Python时:

student_data("Jeremy", 19, "999923329")
'[999923329,Jeremy,19]'
Run Code Online (Sandbox Code Playgroud)

(注意我遗漏了关于布尔值的最后一点 - 我会在一秒钟内完成.)

根据我的理解,'Jeremy'和'999923329'是字符串,它们随后作为第二行中字符串的一部分返回.对于'age',因为当我调用函数student_data时没有引号,它被Python解释为int.然后,我将那个int值转换成一个字符串,所以我最终会得到'[999923329,Jeremy,19].

所以从技术上讲,我想我要问的是:参数'age'是否被python视为int,直到return函数将其更改为str类型?请注意,赋值需要四个参数,两个字符串(我有),一个int(我不知道它实际上是否被解释为int)和一个布尔值,它导致以下内容:

我真的不知道布尔人是如何工作的.具体来说,在作业的背景下,我应该做什么?一个例子是什么?我把我的代码摆弄了一下,我想出了这个:

def student_data(name, age, student_number, boolean):
    return  '[' + student_number + ',' + name + ',' + str(age) + "," + str(boolean) + ']'
Run Code Online (Sandbox Code Playgroud)

并在Python中输入:

student_data("Jeremy", 19, "999923329", True)
'[999923329,Jeremy,19,True]'
Run Code Online (Sandbox Code Playgroud)

这实际上完全遵循了作业要求我做的事情,但我不喜欢它,因为我真的不明白发生了什么.比如,'boolean'是函数student_data需要工作的参数.但究竟什么是参数?和变量一样吗?当我在python shell中输入'True'时,究竟发生了什么?

在为变量赋值时发生的事情是一样的吗?在那种情况下,当我为变量赋值时会发生什么?赋值是要求参数为布尔值,但我不相信我在代码中输入了布尔值,是吗?

是的,如果它已经不明显,我以前从未有过计算机科学课.

python string parameters boolean function

15
推荐指数
2
解决办法
1463
查看次数

标签 统计

python ×2

boolean ×1

comments ×1

docstring ×1

function ×1

parameters ×1

string ×1