日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python基础课程2(看代码看注释)--条件判断|循环|函数|生成器|类

發(fā)布時間:2025/3/15 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python基础课程2(看代码看注释)--条件判断|循环|函数|生成器|类 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
##人生苦短,我用python ##課程內容 #條件判斷 #循環(huán) #類:簡單介紹類的用法##條件判斷 #if condiction:# dosomething #else: # dosomething total_cost = 32.5 if total_cost>30:discount = 0.9 elif total_cost>20:diacount = 0.95 else :discount = 1 total_cost = discount print('小姐姐買水果的花費為:{}元'.format(total_cost)) #布爾型變量做運算 a = True b = False print('a is {},b is {}'.format(a,b) ) print('a and b is {}'.format(a and b) ) print('a or b is {}'.format(a or b) ) print('not a is {}'.format(not a) ) ##條件判斷的近親-斷言:我斷言它肯定是這樣的,如果不是我就崩潰 age=19 assert age==18,'她竟然不是18歲'#如果age是18則是18,如果不是就輸出“她竟然不是18歲”。為了程序員捕捉或者調試錯誤出現(xiàn)的##循環(huán)for循環(huán)(遍歷循環(huán)),while循環(huán)(條件循環(huán)) #for循環(huán):遍歷循環(huán) costs = [2,3,5,7,9,4] for cost in costs:print('消費{}元'.format(str(cost).center(10))#str()轉換成字符串形式,center()為了格式好看 #生成一個長度為20的一個隨機列表 # 生成隨機數(shù)需要使用random模塊 import random # 生成一個1-10之間的隨機數(shù) random.randint(1,10) random_numbers = [] while len(random_numbers)<20:random_numbers.append(random_numbers.randint(1,10)) print(random_numbers,len(random_numbers))random_numbers = [] for i in range(20):random_numbers.append(random.randint(1,10)) print(random_numbers,len(random_numbers)) ##編程建議:就是只要能使用for循環(huán)就不要使用while循環(huán) ##當循環(huán)條件跟數(shù)量沒有關系時只能使用while循環(huán) #題目:往空列表添加隨機數(shù),直到添加的數(shù)為9時結束,只能用while random_numbers = [] while 9 not in random_numbers:random_numbers.append(random.randint(1,10)) print(random_numbers,len(random_numbers)) ##問題:a = [1,2,3]是個列表,判斷b = 1,c = (b in a),判斷c是什么類型,是不是一個元組呢?不是元組,是一個布爾型變量。元組永遠是true import time number = 0 while True:time.sleep(1)number+=1print('hello world,{}'.format(number),end = '\r') a = [] b = () type(a),type(b) random_numbers=[6,3,7,5,9] #跳出本次循環(huán) for number in random_numbers:if number % 2 ==0:print('{} is 偶數(shù)'.format(number))else:continue #跳出全部循環(huán) for number in random_numbers:if number % 2 == 0:print('{} is 偶數(shù)'.format(number))else:breakprint("沒有跳過") else:print('全是偶數(shù)') ##for 可以構建推導式:可以從一個數(shù)據系列構建另一個數(shù)據系列 random_numbers = list(range(10)) random_numbersnew_numbers = [] for number in random_numbers:new_numbers .append(number=10) #g構建推導式: new_numbers = [number*10 for number in random_numbers]##拼湊出新的列表,叫做列表推導式,即我們是在列表里使用for進行的推導式,也可以擁有字典推導式 ##字典推導式 print(dict_numbers = {number :'A' for number in random_numbers}) tuple_number = (number*10 for number in random_numbers)##tuple此時是一個生成器,是一個可迭代的序列 ##生成器:在網上下電影想下高清的但是內存不夠,但是還是可以看到大于內存的,說明電影不是一下子就下載到內存上的,是一邊播放一邊下載的。 tuple(tuple_number)###函數(shù):抽象概念 函數(shù)名 括號傳遞參數(shù) return返回值 位置參數(shù)是不可以交換位置的 variable_item = {'a':100,'b':200,'c':300,'d':400,'e':500} [key for key,value in variable_item.items() if value ==100]##繁瑣 #定義函數(shù) def get_keys(dict_variable,value):return [k for k,v in dict_variable.items() if v ==value] get_keys(variable_item,100) #調用的時候傳遞的參數(shù)才是實參 #函數(shù)是封裝好的,可以重復使用的,能夠完成特定功能的代碼塊,它是代碼的抽象 def pow1(x,a):y = x**aprint('y is {}'.format(y)) y1 = pow1(2,3)#不建議對可變類型在函數(shù)內進行更改,建議用函數(shù)返回值進行重新賦值 def test(variable):temp = variable.copy()temp.append(100)return tempvar = [] var = test(var)#參數(shù)收集:就是在用的時候還不知道要不要用其他的參數(shù),就先進行一下空間的開辟## **就是收集key=value這種形式的參數(shù) def test2(name,age,*args,**kwargs):print(name,age,*args,**kwargs) test('wrong',12,23,'[k]',[12,23]) dict_variable={'weight':100,'height':200 } test('wrong',12,**dict_variable)#收集位置參數(shù),收集關鍵字參數(shù)?##裝飾器: a = 10 b = [11,12]def test():print('test') c = test #可以把函數(shù)賦值給一個變量,函數(shù)返回函數(shù),函數(shù)可以當做函數(shù)的·返回值進行返回 def test1(func):return func f = test1(func) f.__name__ f() #返回一個從0-1的浮點數(shù) import random def test():return round(random.random(),1) #函數(shù)返回的浮點數(shù)保留3個有效數(shù)字 ##python另一個語法糖。裝飾器 @decorator import random def test():return random.random(),1 @decorator def decorator(func):def wrapper(*args,**kwargs):#do somethingreturn round(func(*args,**kwargs),3)return wrapper() f = decorator(test) test.__name__###類 class Person:def __init__(self,name,age): #初始化函數(shù)中,self后邊是實例化對象的屬性,加下劃線的意思是這個屬性是私有的,不應該訪問self._name = name#表示我該屬性是隱私的self._age = agedef get_name(self):return self._names = 'hello world' a.center(12) p = Person('wang',12) p.get_name() #繼承 class Student(person):pass #什么都不做,占個位而已

總結

以上是生活随笔為你收集整理的python基础课程2(看代码看注释)--条件判断|循环|函数|生成器|类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。