Python系列之笨方法学Python是我学习《笨方法学Python》—Zed A. Show著
的学习思路和理解,如有不如之处,望指出!!!
本节主要学习函数的多种参数传递方式
我们可以直接给函数传递数字,也可以传递变量,还可以传递给它数学公式,甚至也可以把数学公式和变量合起来用。
源代码
# ex19.py
def cheese_and_crackers(cheese_count,boxes_of_crackers):
print "You have %d cheeses!"%cheese_count
print "You have %d boxes of crackers!"%boxes_of_crackers
print "Get a blanket.\n"
print "We can just give that function numbers directly:"
cheese_and_crackers(20,30)
print "Or,we can use variables from our script:"
amount_of_cheese=10
amount_of_crackers=50
cheese_and_crackers(amount_of_cheese,amount_of_crackers)
print "We can even do much inside too:"
cheese_and_crackers(10+20,5+6)
print "And we can combine the two, variables and math:"
cheese_and_crackers(amount_of_cheese+100,amount_of_crackers+1000)
这个函数脚本思路很简单,主要以下几个点需要注意:
def()
指令后,记得加:
- 回想下前面学过的
%d
、%r
、%s
之间的区别 \n
的作用
应该看到的结果
常见问题
-
对每一行代码添加
#
注释 -
第11行和12行创建的变量会不会改变函数中的变量
不会。这些变量是在函数之外的,当它们被传递到函数中以后,函数会为这些变量创建一些临时的版本,当函数运行结束后,这些临时变量就被丢弃了。
-
函数的参数个数有限制吗?
取决于Python的版本和所用的操作系统,不过就算有限制,限值也是很大的。
一个问题
作者在文中提出了一个问题:
如果让用户给函数传递变量呢?应该怎么写?比如:让用户输入cracker和cheese的数量
我写的指令如下:
print "Or,we can use variables from user:"
amount_of_cheese=raw_input("Enter your numbers: ")
amount_of_crackers=raw_input("Enter your numbers: ")
cheese_and_crackers(amount_of_cheese,amount_of_crackers)
但是在运行时,一直报错
希望大佬可以帮忙解释写这个非常简单的基础问题
这是**《笨方法学Python》**的第十篇文章
希望自己可以坚持下去
希望你也可以坚持下去