1. 程式人生 > >內建資料型別(上)---Python基礎學習筆記(四)

內建資料型別(上)---Python基礎學習筆記(四)

內建資料的三大主要型別: 1、數字(整數、浮點數) 2、序列(字串、列表、元組) 3、對映(字典) 按照是否可原地修改值分兩大類: 不可變物件(數字,字串,元組,不可變集合) 可變物件(列表,字典,可變集合)

一、整數(不可變物件) 1、分類: 正整數 負整數 零 二進位制整數 八進位制整數 十六進位制整數 2、相關操作: (1)算數運算子:基本的數學運算 + 加 - 減 * 乘 / 除 // 取整除 % 取餘除 ** 冪次方 (2)比較運算子 == 檢查兩個運算元是否相等,是為真 != 檢查兩個運算元是否不等,是為真 <> 檢查兩個運算元是否不等,是為真

檢查左運算元是否大於右運算元,是為真 < 檢查右運算元是否大於左運算元,是為真 = 檢查左運算元是否大於或等於右運算元,是為真 <= 檢查右運算元是否大於或等於左運算元,是為真 (3)賦值運算子 += c += a等效於c = c + a -= c -= a等效於c = c - a = c = a等效於c = c * a /= c /= a等效於c = c / a %= c %= a等效於c = c % a = c

= a等效於c = c ** a //= c //= a等效於c = c // a (4)位運算 & 與 | 或 ^ 異或 << 左移

右移 (5)三元運算子:e = x if condition else y If condition: e = x Else: e=y

二、浮點數(不可變物件) 1、分類: 一般浮點數 科學浮點數:3.14e-10 2、相關操作:同整數型,不支援位運算子 3、相關內建模組:需要匯入import xxx Math:數學工具模組 Math.pi:圓周率 Math.e:自然數 Math.sin() Math.qrt() Random:隨機工具模組 Random.random():隨機生成0-1之間的浮點數 Random.randint(m,n):生成m-n之間的整數 Random.choice(序列):在隨機序列中隨機抽取一個元素 Random.shuffle(序列):隨機打亂一個集合

三、集合型(不可變物件) set元素唯一的無序集合,元素型別不限並且可以巢狀,用{}表示,不支援索引

相關操作: (1)並集運算:a|b或a.union(b) (2)交集運算:a&b或a.intersection(b) (3)對稱差運算:a^b (4)差集運算:a-b (5)增加元素運算:a.add(4)或a.update({5}) (6)刪除元素運算:a.removr(5) (7)驗證子集:a.issubset(b) (8)元素存在性:1 in a,2 not in a (9)集合解析器:{x**2 for x in {1,2,3}}

四、布林型(不可變物件) 就兩個值 True False 邏輯運算子: and 與 or 或 not 非

課後題: (1)華氏溫度轉化為攝氏溫度:c=5/9(f-32) f = int ( input (‘請輸入需要轉換的花紋溫度:’) ) c = 5 / (( f - 32 )* 9) print (c)

(2)計算存款利息。有1000元,想存一年。有3種方法可以選擇: 活期,年利率為r1=4.1% 一年定期,年利率為r2=3.59% 兩次半年定期,年利率為r3=2.28% 請分別計算出一年後的本息和。 money = 1000 r1 = 0.0041 r2 = 0.00359 r3 = 0.00228 y1 = money + (money * r1) y2 = money + (money * r2) y3 = (money + (money * r3)/2)+(((money + (money * r3))/2) * r3) print(r1,r2,r3)

(3)按揭買房,計算首付和月供 需要的資料:面積、單價、按揭比例、商貸利率、償還年限、月供、首付 首付=面積單價按揭比例 月供=面積單價(1-按揭比例)(1+商貸利率)/償還年限/12 a = int (input(‘請輸入您需要購買房子的面積:’)) b = float (input(‘請輸入您需要購買房子的單價:’)) c = float (input(‘請輸入您需要購買房子的按揭比例:’)) d = float (input(‘請輸入您需要購買房子的商貸利率:’)) e = int (input(‘請輸入您需要購買房子的償還年限:’)) shoufu = a * b * c yuegong = a * (((b * (1-c))*(1+d))/e)/12 print (shoufu,yuegong)

(4)計算並列印123的二進位制 sum = 123 a1 = sum % 2 sum = sum // 2 a2 = sum % 2 sum = sum // 2 a3 = sum % 2 sum = sum // 2 a4 = sum % 2 sum = sum // 2 a5 = sum % 2 sum = sum // 2 a6 = sum % 2 sum = sum // 2 a7 = sum % 2 sum = sum // 2 print(‘%s%s%s%s%s%s%s’%(a7,a6,a5,a4,a3,a2,a1))

(5)輸入一個四位正整數並打印出其順序 sum = int (input(‘請輸入一個四位數正整數:’)) a1 = sum % 10 sum = sum // 10 a2 = sum % 10 sum = sum // 10 a3 = sum % 10 sum = sum // 10 a4 = sum % 10 sum = sum // 10 print(‘\t%s\t%s\t%s\t%s’%(a4,a3,a2,a1))

(6)商場推出幸運抽獎活動 接收輸入的會員卡號4位數 分解獲得各個數字 計算各位數字之和 sum = int (input(‘請輸入您的會員卡號(四位數):’)) a1 = sum % 10 sum = sum // 10 a2 = sum % 10 sum = sum // 10 a3 = sum % 10 sum = sum // 10 a4 = sum % 10 sum = sum // 10 print(‘\t%s\t%s\t%s\t%s’%(a4,a3,a2,a1)) print(a4+a3+a2+a1)