python:函数和循环判断

时间:2024-01-11 22:00:50

输出显示

先说一下最基础的输出:

print('hello world')

唯一值得提到是字符串的format函数。

format函数代替了C中的%s。

print('{0} say:{0} {1}。'.format('python', 'hello world'))

{0}是format的第一个字符串,{1}是format的第二个字符串。

IF判断

if 1 > 2:
print('1>2')
else:
print('1<=2')

在if判断中,还有elif,在之后的联系中,可能会用。

for循环

for item in [1, 2, 3]:
print(item)
for item in [1, 2, 3]:
print(item)
if item == 2:
break
else:
print(5)

在这里我们要注意,for循环中还可以加else,我在C++,java中都没有遇见怎么好用的功能,只有全部循环完成,才能执行else;当break时,就不能执行else。

python:函数和循环判断

函数

普通参数

def f1(name):
print('hello', name) f1('alex')

python:函数和循环判断

默认参数

def f1(name='no name'):
print('hello', name) f1()

默认参数无参数传入也可以运行

python:函数和循环判断

还有两种是普通参数和默认参数的延伸——收集参数。

收集参数

def f2(*args):
print(type(args))
for i in args:
print(i)
f2('alex', 'alen')

python:函数和循环判断

收集参数可以传入好多参数,只要不是关键字参数,没有被默认参数抢走,都会存成tuple。

def f3(**kwargs):
print(type(kwargs))
for k, v in kwargs.items():
print(k + '-------' + v)
f3(name = 'alex', sex = 'male')

python:函数和循环判断

而传进的多余的关键字参数,会存在字典(dictionary)中

关键字参数

在调用函数时,如果要指定传某个参数,而不是按顺序传参数,就用到了关键字参数。

多种参数混合调用的顺序问题

def f4(name, sex = '男', *args, **kwargs):
print('my name is {0}'.format(name))
print('my sex is {0}'.format(sex))
for item in args:
print(item)
for k, v in kwargs.items():
print(k + '-----' + v) f4('alex', hobby = 'ball')

显示的结果

my name is alex
my sex is 男
hobby-----ball

【注意】

这里的顺序不能错,先写普通参数,之后写默认参数,然后是收集参数和关键字参数。