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…语句组来实现。
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语句跳出其所处的最内层的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