1:
一个不含参数的函数:
def print_x_y():
print("x""y")
2:
含有一个参数的函数:
def print_hello(arg):
print("hello"+arg)
3:
含有default value的函数:
def defunc(default="default"):
print(default)
def defunc(d1="default",d2="faultde"):
print(d1)
print(d2)
可以这样调用函数:
defunc(d2="123")
这样定义是错误的:
def defunc(d1="123",d2):
print(d1)
SyntaxError: non-default argument follows default argument
也就是说调用方式和c++不同,但是实现方法是一样的。
ex:
>>> print("hello")
hello
>>> print("123","445")
123 445
>>> print("123","456",":")
123 456 :
>>> print("123","456",sep=":")
123:456
>>> print("123","456",sep=":",end="!@#")
123:456!@#
>>> print("123","456",sep=":",end="!@#",123)
SyntaxError: non-keyword arg after keyword arg
>>> print("123","456",sep=":",end="!@#")
123:456!@#
>>> print(123,file=123)
Traceback (most recent call last):
File "<pyshell#63>", line 1, in <module>
print(123,file=123)
AttributeError: 'int' object has no attribute 'write'
>>> print(123,file=ok)
Traceback (most recent call last):
File "<pyshell#64>", line 1, in <module>
print(123,file=ok)
NameError: name 'ok' is not defined