一、作业内容
笨办法学 Python 习题18-24以及加分题。
二、作业代码:
# 习题 18:命名、变量、代码、函数
# 知识点总结:
# 一、函数可以给代码片段命名,就跟变量和数字命名一样
# 二、它们可以接受参数,就跟你的脚本接受argv一样。
# 三、通过使用#1和#2,它们可以让你创建微型脚本或者小命令。
# this one is like your scripts with argv
# 用def定义函数print_two,参数为*args
def print_two(*args):
# 将args解包,将所有的参数依次赋予左边的变量名
arg1, arg2 = args
# 打印包含格式化变量的字符串arg1: %r, arg2: %r ,变量名分别为arg1和arg2
print("arg1: %r, arg2: %r" % (arg1, arg2))
# ok, that *args is actually pointless, we can just do this
# 用def定义函数print_two_again,参数分别为arg1和arg2
def print_two_again(arg1, arg2):
# 打印包含格式化变量的字符串 arg1: %r, arg2: %r,变量名分别为arg1和arg2
print("arg1: %r, arg2: %r" % (arg1, arg2))
# this just takes one argument
# 用def定义函数print_one,参数为arg1
def print_one(arg1):
# 打印包含格式化变量的字符串 arg:1 %r,变量名为arg1
print("arg:1 %r" % arg1)
# this one takes no arguments
# 用def定义函数print_none
def print_none():
# 打印字符串I got mothin.
print("I got mothin.")
# 调用函数print_two(),参数为字符串Zed,字符串Shaw
print_two("Zed", "Shaw")
# 调用函数print_two_again(),参数为字符串Zed,字符串Shaw
print_two_again("Zed", "Shaw")
# 调用函数print_one(),参数为字符串First!
print_one("First!")
# 调用函数print_none()
print_none()
运行结果如下:
"C:\Program Files\Python36\python.exe" E:/python3_project/ex18.py
arg1: 'Zed', arg2: 'Shaw'
arg1: 'Zed', arg2: 'Shaw'
arg:1 'First!'
I got mothin.
Process finished with exit code 0
加分习题
为自己写一个函数注意事项以供后续参考。你可以写在一个索引卡片上随时阅读,直到你记住所有的要点为止。注意事项如下:
1.函数定义是以 def 开始的吗?
是。
2.函数名称是以字符和下划线 _ 组成的吗?
不一定。函数名称可以是字符(不一定需要下划线),能体现出函数的功能就够了。
3.函数名称是不是紧跟着括号 ( ?
是。
4.括号里是否包含参数?多个参数是否以逗号隔开?
是。
5.参数名称是否有重复?(不能使用重复的参数名)
否。
6.紧跟着参数的是不是括号和冒号 ): ?
是。
7.紧跟着函数定义的代码是否使用了 4 个空格的缩进 (indent)?
是。
8.函数结束的位置是否取消了缩进 (“dedent”)?
是。
当你运行(或者说“使用 use”或者“调用 call”)一个函数时,记得检查下面的要点:
1.调运函数时是否使用了函数的名称?
2.函数名称是否紧跟着 ( ?
3.括号后有无参数?多个参数是否以逗号隔开?
4.函数是否以 ) 结尾?
# 习题19:函数和变量
# 创建名称为cheese_and_crackers函数,
# 参数分别为 cheese_count 和boxes_of_crackers
def cheese_and_crackers(cheese_count, boxes_of_crackers):
# 打印包含格式化变量的字符串,变量名为cheese_count
print("You have %d cheeses!" % cheese_count)
# 打印包含格式化变量的字符串,变量名为boxes_of_crackes
print("You have %d boxes of crackers!" % boxes_of_crackers)
# 打印字符串 Man that's enough for a party!
print("Man that's enough for a party!")
# 打印字符串 Get a blanket并换行
print("Get a blanket.\n")
# 打印字符串 We can ju