Python2.7 - IMOOC - 4

第三章 Python變量和數據類型

3-7.Unicode字符串

  • 由於計算機只能處理數字,若是要處理文本,就必須先把文本轉換爲數字才能處理。
  • 最先的計算機在設計時採用8個比特(bit)做爲一個字節(byte),因此,一個字節能表示的最大的整數就是255(二進制11111111=十進制255),0 - 255被用來表示大小寫英文字母、數字和一些符號,這個編碼表被稱爲ASCII編碼,好比大寫字母 A 的編碼是65,小寫字母 z 的編碼是122。
  • 若是要表示中文,顯然一個字節是不夠的,至少須要兩個字節,並且還不能和ASCII編碼衝突,因此,中國製定了GB2312編碼,用來把中文編進去。
  • 相似的,日文和韓文等其餘語言也有這個問題。爲了統一全部文字的編碼,Unicode應運而生。Unicode把全部語言都統一到一套編碼裏,這樣就不會再有亂碼問題了。
  • Unicode一般用兩個字節表示一個字符,原有的英文編碼從單字節變成雙字節,只須要把高字節所有填爲0就能夠。
  • 由於Python的誕生比Unicode標準發佈的時間還要早,因此最先的Python只支持ASCII編碼,普通的字符串'ABC'在Python內部都是ASCII編碼的。
  • Python在後來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示。
  • Unicode字符串除了多了一個 u 以外,與普通字符串沒啥區別,轉義字符和多行表示法仍然有效。
  • 若是中文字符串在Python環境下遇到 UnicodeDecodeError,這是由於.py文件保存的格式有問題。能夠在第一行添加註釋python

    # -*- coding: utf-8 -*-
    目的是告訴Python解釋器,用UTF-8編碼讀取源代碼。而後用編輯器寫.py文件時選擇UTF-8格式保存。
  • 在Python中正確使用Unicode算法

3-8.整數和浮點數

  • Python支持對整數和浮點數直接進行四則混合運算,運算規則和數學上的四則運算規則徹底一致。
  • Python的整數運算結果仍然是整數,浮點數運算結果仍然是浮點,整數和浮點數混合運算的結果是浮點數。
  • 整數運算的結果永遠是精確的,而浮點數運算的結果不必定精確,由於計算機內存再大,也沒法精確表示出無限循環小數,好比0.1 換成二進制表示就是無限循環小數

3-9.布爾類型

  • 布爾類型還能夠與其餘數據類型作 and、or和not運算。
  • Python把0、空字符串''和None當作 False,其餘數值和非空字符串都當作 True。
  • 短路計算

    • 1.在計算 a and b 時,若是 a 是 False,則根據與運算法則,整個結果一定爲 False,所以返回 a;若是 a 是 True,則整個計算結果一定取決與 b,所以返回 b。編輯器

    • 2.在計算 a or b 時,若是 a 是 True,則根據或運算法則,整個計算結果一定爲 True,所以返回 a;若是 a 是 False,則整個計算結果一定取決於 b,所以返回 b。編碼

    ##### 代碼設計

    a = True
      print a and 'a=T' or 'a=F'

    ##### 結果
    code

寫在後面

來自慕課網之Python入門blog

相關文章
相關標籤/搜索