Python基础语法:数据类型、进制转换、转义字符、字符编码、整数与浮点数运算规则、布尔型运算规则
本人使用的python版本為:Python 3.7.4
Python中的基本數據類型
整數和浮點數在計算機內部存儲的方式是不同的,整數運算永遠是精確的,而浮點數運算則可能會有四舍五入的誤差。
Python中進制的轉換
將其他進制數字轉化為二進制、八進制、十六進制的函數為:bin()、oct()、hex().
注意轉化的結果為字符串:
將二進制、八進制和十六進制轉化為十進制,需調用函數int(str, base),str表示原始進制數的字符串形式,base是原始進制如2,8,16。代碼示例如下:
獲取字符的ASCII碼值,使用 ord() 函數,將ASCII碼值轉換為對應的字符調用chr()函數:
print(ord('A')) # 65 print(chr(65)) # 'A'print語句
print會依次打印每個字符串,遇到逗號","會輸出一個空格。
轉義字符
'\n' # 表示換行 '\t' # 表示制表符 '\\' # 表示\本身 '\'' # 表示'本身 r'''...''' #表示轉義的多行字符 print(r'''"To be, or not to be": that is the question. Whether it's nobler in the mind to suffer.''')運行結果為:
字符編碼問題
如果中文字符串在Python環境下遇到 UnicodeDecodeError,這是因為.py文件保存的格式有問題。可以在第一行添加注釋:
# -*- coding: utf-8 -*-目的是告訴Python解釋器,用UTF-8編碼讀取源代碼。
Python在后來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:
顯示從外部文件讀取的Unicode編碼的原文字,注意編碼轉換:
str = '\\u6000' # 外部文件讀進來的Unicode編碼字符串,系統按照字符串理解 # 將字符串用Unicode解碼,然后utf-8編碼輸出為原字符 print(str.encode('utf-8').decode('unicode_escape')) print('\u6000') # python支持Unicode編碼,使用轉義字符'\u'表示。輸出為漢字‘懷’ print('懷'.encode('unicode_escape').decode('utf-8')) # 輸出為漢字‘懷’的Unicode編碼"\u6000"python中整數和浮點數的運算
和數學運算不同的地方是,Python的整數運算結果仍然是整數,浮點數運算結果仍然是浮點數。但是整數和浮點數混合運算的結果就變成浮點數了。為什么要區分整數運算和浮點數運算呢?這是因為整數運算的結果永遠是精確的,而浮點數運算的結果不一定精確,因為計算機內存再大,也無法精確表示出無限循環小數。
Python中布爾類型計算規則
Python把0,空字符串'',和None都看成False,其他數值和非空字符串看成True。
Python中 and 和 or 運算的一條重要法則:短路計算。
所以Python解釋器在做布爾運算時,只要能提前確定計算結果,它就不會往后算了,直接返回結果。
總結
以上是生活随笔為你收集整理的Python基础语法:数据类型、进制转换、转义字符、字符编码、整数与浮点数运算规则、布尔型运算规则的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 堆内存常见的分配策略、 经典的垃圾收集器
- 下一篇: MySQL timestampdiff(