if
x=int(input('please input a number:'))#默認(rèn)是輸入的字符串,這樣可以控制輸入的是整數(shù)
if x>18:
print('adult')#在條件后面有個(gè)冒號(hào),不能忘記
elif x>6:
print('teenager')#elif是else if的縮寫
elif x>1:
print('kid')#可以跟很多elif
else:
print('input error')#可以沒(méi)有else
for循環(huán)
sum = 0
for m in range(101): #for循環(huán)語(yǔ)句,把m帶入rang(101)的序列中一個(gè)一個(gè)的執(zhí)行
sum=sum+m #其中rang(101)就是生成一個(gè)從0到100的list;
print(sum)
while循環(huán)
n = 0
while sum>0:#while判斷語(yǔ)句,為真的時(shí)候就一直執(zhí)行
n=n+sum #判斷后,執(zhí)行縮進(jìn)兩個(gè)的函數(shù)。
sum=sum-2#條件改變量
print(n)
函數(shù)
print(abs(-10.2))#abs()求絕對(duì)值的函數(shù)
print(max(2,5,4,9,3))#max()求最大值的函數(shù)
print(str(123.545))#str()轉(zhuǎn)成字符型的函數(shù)
def sun(n):#定義函數(shù)需要用關(guān)鍵字:def
m=n+54
return m #函數(shù)必須要又返回值
print(sun(45))#函數(shù)的實(shí)現(xiàn)
def nouse():
pass#可以定義一個(gè)函數(shù)在這兒,但是不用,直接用關(guān)鍵字pass掉。
lx=0
ly=0
def move(x,y):#python中,函數(shù)可以返回多個(gè)值
nx=lx+x
ny=ly+y
return nx,ny
print(move(15,25))
def imformation(name,gender,age=6,city='Beijing'):
#在定義函數(shù)時(shí),參數(shù)可以默認(rèn),然后沒(méi)有傳參數(shù)的話就以默認(rèn)的為準(zhǔn)
print('name:',name)
print('gender:',gender)
print('age:',age)
print('city:',city)
return
imformation('ahahha','M',8,'tianjing')#可以傳遞新的參數(shù)
imformation('cccccc','M',12)
imformation('bbaba','F',city='tianjing')#如果中間有個(gè)參數(shù)不傳遞的話,后面的參數(shù)必須注明
可變參數(shù)的運(yùn)用
第一種可變參數(shù)
def calc(numbers):
sum=0
for k in numbers:
sum=sum+k*k
print(sum)
return
calc([1,2,3])#這樣,定義的一個(gè)不變參數(shù),但是傳參的時(shí)候傳遞的是list或者tuple
calc((1,2,3))#就可以形成可變參數(shù)
第二種可變參數(shù)
def calc_1(*numbers):
sum=0
for k in numbers:
sum=sum+k*k
print(sum)
return
calc_1(1,2,3,4)#像這樣,在定義參數(shù)的時(shí)候添加一個(gè)*號(hào),就變成了可變參數(shù)
calc_1()#還可以傳遞空參數(shù)
python中關(guān)鍵字參數(shù)的使用
def person(name,age,**other):#定義了一個(gè)函數(shù),其中前兩個(gè)是固定參數(shù),后面一個(gè)是關(guān)鍵字參數(shù)
print('name:',name,'age:',age,'other:',other)#關(guān)鍵字參數(shù),接收任意多個(gè)帶參數(shù)名的參數(shù)
return
person('adsds','15')#只傳遞必要參數(shù)
person('sssss','20',city='Beijing',job='student')#傳遞必要參數(shù)以及其他參數(shù)
#其實(shí)可以把上面的處必要參數(shù)的其他參數(shù)組成一個(gè)dict{}
dict_2={'city':'Beijing','job':'student'}
person('sssss',20,city=dict_2['city'],job=dict_2['job'])#這樣寫,感覺(jué)更麻煩
person('sssss',20,**dict_2)#這樣寫顯得更為簡(jiǎn)單,實(shí)際效果一樣
python中命名關(guān)鍵字的作用和使用
def person_1(name,age,*,city,job):#定義了一個(gè)命名關(guān)鍵字的函數(shù),*號(hào)是關(guān)鍵字,*號(hào)后面的為命名關(guān)鍵字
print(name,age,city,job)
return
#person_1('zhangsan',25)#這句話報(bào)錯(cuò),說(shuō)明命名關(guān)鍵字必須傳參
person_1('zhangsan',25,city='Beijing',job='student')#命名關(guān)鍵字的傳參必須帶著參數(shù)名
def person_2(name,age,*arg,city,job):#這個(gè)函數(shù)中有一個(gè)可變參數(shù),那么可變參數(shù)后面的參數(shù)都視為命名關(guān)鍵字參數(shù)
print(name,age,arg,city,job)
return
person_2('zhangsan',15,city='Tianjing',job='BOSS')#可變參數(shù)可以不用傳參
#person_2('zhangsan',25)#這句也會(huì)報(bào)錯(cuò),說(shuō)明命名關(guān)鍵字的參數(shù)必須傳遞參數(shù)名和參數(shù)
#其中,這些參數(shù)可以相互這使用,順序?yàn)椋罕剡x參數(shù),默認(rèn)參數(shù),可變參數(shù),命名關(guān)鍵字參數(shù),關(guān)鍵字參數(shù)
def person_3(name,age=20,*arg,city,**other):
print(name,age,arg,city,other)
return
person_3('zahngsan',city='Beijing')
person_3('zhansn',25,'hahah','shffjsa',city='Beijing',job='s',d='x')
上面運(yùn)行結(jié)果如下:
zhansn 25 ('hahah', 'shffjsa') Beijing {'job': 's', 'd': 'x'}