Python -- 流程控制与函数

if-else

x = int(raw_input("Please enter an integer:"))
if x<0:
    x = 0
    print "Negative changed to zero"
elif x == 0:
    print "zero"
else :
    print "More"

Please enter an integer:23
More

其它语言中switch 或 case 语句可以用if…elif…elif…语句组来实现。

for

a = ['cat','dog','apple']
for x in a:
    print x, len(x)

cat 3
dog 3
apple 5

for语句不能完全由程序员自由地控制循环条件和循环体,for循环是对任意种类的序列(如列表或字符串)按出现次序遍历每一项。

函数的定义

def sum(a,b):
    return a+b

func = sum
r = func(5,6)
print r

def add(a,b = 2):
    return a+b
r = add(1)
print r
r = add(1,5)
print r

11
3
6

range()函数

>>> range(10) 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(10,15)
[10, 11, 12, 13, 14]
>>> range(-2,-7)
[]
>>> range(-8,-4)
[-8, -7, -6, -5]
>>> range(10,100,20)
[10, 30, 50, 70, 90]
>>> 

任意个数参数的函数:

在所有有名的形参的后面可以有两个特殊的形参,一个以*args的形式命名,一个以**kw 的形式命名。有了*args形式的形参后函数在调用时就可以在正常的能匹配的实参表后面输入任意个数的参数,这些参数组成一个序表赋给args形参,不能匹配的关键字参数组成一个字典赋给kw形参。在任意个数形参之前可以有0到多个正常的参数。

def fprintf(file, format, *args): 
    file.write(format % args) 

break - continue

break语句跳出其所处的最内层的for 或 while循环,continue语句继续下一循环步。
例:求10以内的素数

for n in range(2,10):
    for x in range(2,n):
        if n % x == 0:
            print n,'equals',x,'*',n/x
            break           
    else:
        print n,'is a prime number'

2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值