3
A
回答
5
您正在将函数与方法混淆。函数调用看起来像:
func(arg1, arg2, ...)
一个方法调用的样子:
obj.method(arg1, arg2, ...)
在你的榜样,len(variable)
是对len
功能,它接受几个不同的参数类型的呼叫。呼叫variable.upper()
是对象variable
的方法调用方法upper
。
1
len()
,zip()
,dict()
是内置python函数的示例。 len()
是一个返回对象长度(项目数)的函数。
len([1,2,3]) # returns 3
len('abc') # returns 3
.upper()
是字符串模块的一种方法,它将字符串格式化为大写。
str('abc').upper() # returns 'ABC'
+0
'str('abc')。upper()' - >'str()'* function *在这里没用。 –
谢谢..所以这就是我现在明白的:函数是全局的,至少可以调用两种数据类型,而方法只能由一个调用。方法在模块或类中定义(它们是否是同一件事?),并使用'点符号'。 – shfury
那么,函数可以传递任何它们写入的期望类型。函数参数和方法参数基本相同。唯一的区别是方法在作为第一个参数传递的类的实例中(通常称为'self'),并且该参数在调用中的方法名称前面(后跟一个点)。 –