2015-11-07 57 views

回答

5

您正在将函数与方法混淆。函数调用看起来像:

func(arg1, arg2, ...) 

一个方法调用的样子:

obj.method(arg1, arg2, ...) 

在你的榜样,len(variable)是对len功能,它接受几个不同的参数类型的呼叫。呼叫variable.upper()是对象variable的方法调用方法upper

+0

谢谢..所以这就是我现在明白的:函数是全局的,至少可以调用两种数据类型,而方法只能由一个调用。方法在模块或类中定义(它们是否是同一件事?),并使用'点符号'。 – shfury

+0

那么,函数可以传递任何它们写入的期望类型。函数参数和方法参数基本相同。唯一的区别是方法在作为第一个参数传递的类的实例中(通常称为'self'),并且该参数在调用中的方法名称前面(后跟一个点)。 –

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 *在这里没用。 –