python:函数和循环判断

输出显示

先说一下最基础的输出:

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。

 

函数

普通参数

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

f1('alex')

默认参数

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

f1()

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

 

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

收集参数

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

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

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

而传进的多余的关键字参数,会存在字典(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

 【注意】

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

 

 

 

 

 

 

 

posted @ 2018-12-12 23:37  安智伟  阅读(323)  评论(0编辑  收藏  举报