使用此脚本:
color = 'blue'
def say_color(color):
print 'The color is: ' + color
say_color()
Run Code Online (Sandbox Code Playgroud)
在这里,我试图允许say_color在不传递参数的情况下进行处理,结果是默认颜色(蓝色).但是,如果指定了颜色,则不会使用蓝色并使用给定的字符串.
这是怎么做到的?
def say_color(color='blue'):
print 'The color is: ' + color
say_color()
Run Code Online (Sandbox Code Playgroud)
default_color = 'blue'
def say_color(color=default_color):
print 'The color is: ' + color
Run Code Online (Sandbox Code Playgroud)
然后:
say_color() # default_color is used
say_color('red')
Run Code Online (Sandbox Code Playgroud)
收益率:
The color is: blue
The color is: red
Run Code Online (Sandbox Code Playgroud)
如果您未color在通话中指定,default_color则将在您的say_color功能中使用.如果您确实color在通话中指定了a ,那么它将覆盖您的默认值.
附录:有关如何以及何时分配/约束这些值的更多技术解释/背景,请参阅下面的@HughBothwell(谢谢!)的内容.
| 归档时间: |
|
| 查看次数: |
167 次 |
| 最近记录: |