###### tags: `python` # Python 基礎語法 ### Out put方式 ```python= print('Hello world') print(*array) #可列出陣列中所有數值 ``` ### Python宣告變數不需預先指定型態,會依照初始值決定變數型態。 ```python= iv = 10 fv = 12.3 cv = 3 + 5j sv = "hello python" bv = True nv = None #空值宣告方式 print(iv,fv,cv,sv,bv) print(type(iv)) #int print(type(fv)) #float print(type(cv)) #complex print(type(sv)) #str print(type(bv)) #bool print(nv) #none print(isinstance(cv,str)) #判斷是否為特定型別 此例為判斷是否為str ``` ### Input ```python= name = input('Hello, what is your name?') # input 讓使用者輸入 print('Hi',name) ``` ### if...elif 條件式 須注意**else if**在python寫作**elif** 程式區塊以**縮排**區分 條件後須加上--> **:** ```python= import random #引入亂數模組 grade = random.randint(0,100) #詳細函式看下方 if grade >= 90: print(grade,'GOOD') elif grade >=60: print(grade,'not bad') elif grade <60: print(grade,'need more hard') else: print(grade,'Loser!') ``` ### 亂數 random()是無法直接使用的,需引入random模組,通過random靜態對象調用該方法。 #### 引入模組 ```python= import random ``` #### 相關函式 ```python= print( random.randint(1,10) ) # 產生1~10之間的整數 print( random.random() ) # 展生0~1之間的浮點數 print( random.uniform(1.1,5.4) ) # 產生1.1~5.4之間的浮點數 print( random.choice('tomorrow') ) # 從陣列中隨機取得一個元素 print( random.randrange(1,100,2) ) # 產生1~100之間間隔為2的隨機整數 ``` ### 布林運算 And or Not | 運算子 | 效果 | | -------- | -------- | | a or b | A或B其中一個條件成立就回傳True | | a and b | A或B兩個條件都成立才回傳True | | not A | 如果A為True,則回傳False,反之則回傳True | ```python= h = 180 w = 85 grade = 80 if h > 175 or w > 80: print('big guy') if grade > 70 and grade < 90: print('normal') ``` # 陣列型態 ### Range Range可以創造特定範圍內的整數,不可修改 Range(stop) stop:停止點 Range(start, stop) start:起始點 stop:停止點 Range(start, stop, step) start:起始點 stop:停止點 step:間隔 ```python= r1 = range(10) #r1[0]=0,r1[1]=1 r2 = range(5,50,5) #r2[0]=5 , r2[1] = 10 , r2[2] = 15 ``` ### Tuple 可用來存放一組資料,型態可各自不相同,個數也不限 創造後無法修改 值與值之間以 **,** 作區隔 ```python= t1 = 10 , 20 #t1[0] = 10 , t1[1] = 20 t2 = 50 , 'Hello world' #t2[0] = 50 , t2[1] = 'Hello World' ``` ### List 就是陣列,資料型態不須相同 可做修改 ```python a1 = [1,'aaa',120.2] #a1[0]= 1 , a1[1] = 'aaa' ``` ### String **split** 可將一個字串用指定的方式切割成陣列 **join** 可將一個陣列用指定的方式組合成字串 ```python= str1 = 'hello world' str2 = str1 str2 += ' Mask' #同str2 = str2 + ' Mask',使用 "+" 組合兩個字串 print(str2) result_spl = str2.split(' ') #將字串用指定的方式切割成陣列 print(result_spl[2]) # result_spl[2] = Mask result_joi = '...'.join(result_spl) #將陣列用指定的方式組合成字串 print(result_joi) # hello...world...Mask ``` ### 序列型別的操作 #### 1.取出特定內容 seq[start:stop:step] ```python= a1 = [1,2,3,4,5,6,7,8,9,10] a2 = a1[0:2] #取出a1[0]~a1[2]的值放到a2 print(*a2) #1 2 3 ``` #### 2.常見的序列操作方法 ![](https://i.imgur.com/XE4rgvH.png) #### 3.修改序列容器的內容 ![](https://i.imgur.com/QHIEGgm.png) # Dark Theme CSS {%hackmd theme-dark %}