python中定义中的类和字符串

时间:2012-10-27 18:00:31

标签: python class function

class someDistance(Distance):
 def __init__(self, dist_funct_name_str = 'Something Distance', p=2):
  self.p = p

只是想问一下

dist_funct_name_str = 'Something Distance'

在定义中做了什么?

非常感谢任何帮助!

3 个答案:

答案 0 :(得分:1)

它用于定义变量dist_funct_name_str的默认值,以防在调用对象someDistance时没有为其传递值。

示例:

In [69]: def func(a,b=2): # b has default value of 2
   ....:     print a,b
   ....:     
   ....:     

In [70]: func(1)   # no value passed for b ,so it is equal to 2
1 2

In [71]: func(1,5) # 5 is passed for b, so b=2 is neglected
1 5

答案 1 :(得分:0)

dist_funct_name_strp都称为默认值。如果在调用__init__时未设置这些值,则使用这些默认值。

它们也出现在其他功能上 - 而不仅仅是__init__

答案 2 :(得分:0)

dist_funct_name_str = 'Something Distance'

是否将“默认参数”传递给init函数。它基本上是用户默认使用的参数或编码器没有将任何参数传递给函数。

您可以在此处阅读更多内容:http://effbot.org/zone/default-values.htm我还建议您:http://www.deadlybloodyserious.com/2008/05/default-argument-blunders/

我不久前遇到过同样的事情。