【Python】 Python 基础
一、Python的歷史版本2.x 與3.x的不同
2.x版本存在的問題:
(1)代碼 臃腫,源碼的重復(fù)量很多
(2)語法不清晰,摻雜著C/PHP/Java的,一些陋習(xí)
3.x版本:幾乎把2.x的源碼重構(gòu),語法規(guī)范、清晰、優(yōu)美
二、編譯型語言與解釋型語言的區(qū)別
1.編譯型語言:一次性把全部程序編譯成二進制文件,然后在運行
優(yōu)點:運行速度快、
缺點:開發(fā)效率低、不能跨平臺
2.解釋型語言:
遍運行遍翻譯
優(yōu)點:調(diào)試代碼很方便,開發(fā)效率高,可以跨平臺
缺點:運行速度慢
三、Python是一個解釋型強類型的動態(tài)語言
四、Python編譯器有
Cpython/ Jpython/ Iropython,先編譯成字節(jié),然后轉(zhuǎn)成二進制文件,pypy是編譯型,
五、變量的功能
(1)存儲運算過程中的結(jié)果,方便以后調(diào)用
(2)數(shù)字、字符串、下劃線任意組合
(3)不能以數(shù)字開頭
(4)不能是Python中的關(guān)鍵字
(5)駝峰式、下劃線
(6)最好不要中文、拼音、太長
六、常量
Python無常量,常量需要大寫表示,常量永遠(yuǎn)都不會變
七、注釋
成對單引號(三個)、雙引號(三個)
八、其他知識
字符串只有相加和相乘 input 是和計算機交互的方式,返回內(nèi)容全是字符串 Python2 :raw_input Python3: input bool 是一個數(shù)據(jù)類型 格式化字符串,百分號占位符需要和百分號括號里面的一一對應(yīng),當(dāng)被格式化的字符串中出現(xiàn)“2%”時需要在后面追加一個“%” 例如“2%%”,否則會因為沒有轉(zhuǎn)換報錯,如下圖。?
字符串轉(zhuǎn)換成數(shù)字的要求? 需要全部數(shù)字組成的字符串,才能轉(zhuǎn)換位數(shù)字 九、ASCII碼 創(chuàng)建開始之初 為七位,為了發(fā)展預(yù)留了一位,所以最終ASCII 為八位,第一位都為零,中文九萬多字十、字符編碼 ASCII:電腦編碼系統(tǒng),由于國際問題,兩個字節(jié)不能編碼全球的語言,僅中國就有80000個,
升級為萬國碼Unicode,使用ASCII表示的字符,使用Unicode表示并不高效,因為Unicode要比
ASCII占用大一倍的空間。為了解決這個問題出現(xiàn)了中間格式的字符集,他們被稱為通用轉(zhuǎn)換格式,
即UTF,常見的utf有 UTF-7,UTF-8,UTF-16,UTF-32
Python從ABC那里繼承了統(tǒng)一的風(fēng)格去處理序列,不管是哪種數(shù)據(jù)結(jié)構(gòu),字符串、元組、列表、字節(jié)序列、xml元素抑或是數(shù)據(jù)庫查詢結(jié)果,他們公用一套豐富的操作
迭代、排序,切片、還有拼接
bytearray()?
方法返回一個新字節(jié)數(shù)組。這個數(shù)組里的元素是可變的,并且每個元素的值范圍: 0 <= x < 256。 如果 source 為整數(shù),則返回一個長度為 source 的初始化數(shù)組; 如果 source 為字符串,則按照指定的 encoding 將字符串轉(zhuǎn)換為字節(jié)序列; 如果 source 為可迭代類型,則元素必須為[0 ,255] 中的整數(shù); 如果 source 為與 buffer 接口一致的對象,則此對象也可以被用于初始化 bytearray。 如果沒有輸入任何參數(shù),默認(rèn)就是初始化數(shù)組為0個元素。 >>>v = memoryview(bytearray("abcefg", 'utf-8')) >>> print(v[1]) 98 >>> print(v[-1]) 103 >>> print(v[1:4]) <memory at 0x10f543a08> >>> print(v[1:4].tobytes()) b'bce' >>>
memoryview()
返回給定參數(shù)內(nèi)存地址查看對象
>>>v = memoryview(bytearray("abcefg", 'utf-8')) >>> print(v[1]) 98 >>> print(v[-1]) 103 >>> print(v[1:4]) <memory at 0x10f543a08> >>> print(v[1:4].tobytes()) b'bce'?
容器序列
list、tuple 和 collections.deque 這些序列能存放不同類型的數(shù)據(jù)
扁平序列:
str bytes bytearry memoryview array.array
不可改變序列:
tuple ,str bytes
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/huyangblog/p/7688007.html
總結(jié)
以上是生活随笔為你收集整理的【Python】 Python 基础的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware10安装centos6.5(
- 下一篇: 编译原理----词法分析程序----py