1. 程式人生 > >入門學習-Python-小甲魚學習資料-Day005-閒聊之Python的資料型別

入門學習-Python-小甲魚學習資料-Day005-閒聊之Python的資料型別

標題 閒聊之Python的資料型別

根據視訊自己練習 :
主要是 熟練使用 int str float bool 資料型別就行了 , 更多的技巧在以後的程式設計過程中再提高吧 !!!
測試程式碼如下 :
tmp= “1024”
makeint01 = int(tmp)
makefloat01 = float(tmp)
print(makeint01)
print(makefloat01)
makestr01 = str(makefloat01)
makestr02 = str(makeint01)
print(makestr01)
print(makestr02)
print()

tmp1 = “1024”
tmp2 = 1024
tmp3 = 1024.0
print(type(tmp1))
print(type(tmp2))
print(type(tmp3))
print(isinstance(tmp1,str))
print(isinstance(tmp1,int))

標題 第005課 測試題答案:

  1. 在 Python 中,int 表示整型,那你還記得 bool、float 和 str 分別表示什麼嗎?
    bool 表示布林型別
    float 表示浮點型
    str 表示字串

  2. 你知道為什麼布林型別(bool)的 True 和 False 分別用 1 和 0 來代替嗎?
    你可能聽說過計算機是很“笨”的,究其根本是因為它只認識二進位制數,所以所有的程式語言最終都會轉換成簡單的二進位制序列給CPU按照一定的規則解析。
    由於二進位制只有兩個數:0 和 1,因此用 0 和 1 來表示 False 和 True 再適合不過了,因為不用浪費資源在轉換的過程上!

  3. 使用 int() 將小數轉換為整數,結果是向上取整還是向下取整呢?
    我們可愛的小甲魚說了,小數取整會採用比較暴力的截斷方式,即向下取整。(注:5.5向上取整為6,向下取整為5)

  4. 我們人類思維是習慣於“四捨五入”法,你有什麼辦法使得 int() 按照“四捨五入”的方式取整嗎?
    int() 固然沒那麼“聰明”,但機器是死的,魚油是活的!
    5.4 “四捨五入”結果為:5,int(5.4+0.5) == 5
    5.6 “四捨五入”結果為:6,int(5.6+0.5) == 6
    大家看明白了嗎?

  5. 取得一個變數的型別,視訊中介紹可以使用 type() 和 isinstance(),你更傾向於使用哪個?
    建議使用 isinstance(),因為它的返回結果比較直接,另外 type() 其實並沒有你想象的那麼簡單,我們後邊會講到。

  6. Python3 可以給變數命名中文名,知道為什麼嗎?
    Pyhton3 原始碼檔案預設使用utf-8編碼(支援中文),這就使得以下程式碼是合法的:

小甲魚 = ‘我愛你’
print(小甲魚)
我愛你

動動手答案:
0. 針對視訊中小甲魚提到的小漏洞,再次改進我們的小遊戲:當用戶輸入錯誤型別的時候,及時提醒使用者重新輸入,防止程式崩潰。
需要注意的地方在程式碼中已經註釋!

  1. import random

  2. times = 3

  3. secret = random.randint(1,10)

  4. print(’------------------I love you工作室------------------’)

  5. guess = 0

  6. print(“不妨猜一下小甲魚現在心裡想的是哪個數字:”, end=" ")

  7. while (guess != secret) and (times > 0):

  8.  temp = input()
    
  9.  while not temp.isdigit():
    
  10.     temp = input("抱歉,您的輸入有誤,請輸入一個整數:")
    
  11. guess = int(temp)
    
  12. times = times - 1 # 使用者每輸入一次,可用機會就-1
    
  13. if guess == secret:
    
  14.     print("我草,你是小甲魚心裡的蛔蟲嗎?!")
    
  15.     print("哼,猜中了也沒有獎勵!")
    
  16. else:
    
  17.     if guess > secret:
    
  18.         print("哥,大了大了~~~")
    
  19.     else:
    
  20.         print("嘿,小了,小了~~~")
    
  21.     if times > 0:
    
  22.         print("再試一次吧:", end=" ")
    
  23.     else:
    
  24.         print("機會用光咯T_T")
    
  25. print(“遊戲結束,不玩啦_”)

  26. 寫一個程式,判斷給定年份是否為閏年。

  27. temp = input(‘請輸入一個年份:’)

  28. while not temp.isdigit():

  29.  temp = input("抱歉,您的輸入有誤,請輸入一個整數:")
    
  30. year = int(temp)

  31. if year/400 == int(year/400):

  32.  print(temp + ' 是閏年!')
    
  33. else:

  34.  if (year/4 == int(year/4)) and (year/100 != int(year/100)):
    
  35.     print(temp + ' 是閏年!')
    
  36. else:
    
  37.     print(temp + ' 不是閏年!')