Python學(xué)習(xí)筆記:編碼、變量、控制語(yǔ)句與函數(shù)_第1頁(yè)
Python學(xué)習(xí)筆記:編碼、變量、控制語(yǔ)句與函數(shù)_第2頁(yè)
Python學(xué)習(xí)筆記:編碼、變量、控制語(yǔ)句與函數(shù)_第3頁(yè)
Python學(xué)習(xí)筆記:編碼、變量、控制語(yǔ)句與函數(shù)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第第頁(yè)P(yáng)ython學(xué)習(xí)筆記:編碼、變量、控制語(yǔ)句與函數(shù)

一、編碼方式

計(jì)算機(jī)只認(rèn)識(shí)0和1二進(jìn)制串。

英文字符和二進(jìn)制串的對(duì)應(yīng)關(guān)系,構(gòu)建為ASCII碼,共128個(gè)字符,使用一個(gè)字節(jié)的二進(jìn)制串。

不同國(guó)家有不同的字符,并且字符可能多達(dá)數(shù)萬(wàn)(漢字多達(dá)10萬(wàn))。一個(gè)字節(jié)最多表達(dá)256字符,為表達(dá)不同國(guó)家的字符,需要使用多個(gè)字節(jié)。

為了將所有字符都能唯一表達(dá),構(gòu)建Un(ic)ode(一種所有字符的編碼)。

Unicode約定了所有字符和二進(jìn)制串的對(duì)應(yīng)關(guān)系。

但不同的字符所需要的二進(jìn)制串長(zhǎng)度是不一樣的,如果按照最長(zhǎng)二進(jìn)制串存儲(chǔ),則會(huì)浪費(fèi)存儲(chǔ)空間。

U(TF)-8是Unicode的一種實(shí)現(xiàn)方式,采用變長(zhǎng)的編碼方式,可以使用1~4個(gè)字節(jié)表示一個(gè)符號(hào)。

規(guī)則如下:

(1)可使用1個(gè)字節(jié)二進(jìn)制串表達(dá)的字符:第1位為0,后7位是這個(gè)字符的Unicode編碼。

(2)使用n個(gè)字節(jié)二進(jìn)制串表達(dá)的字符:第1個(gè)字節(jié)的前n位都設(shè)為1,第n+

1位設(shè)為0,后面字節(jié)的前2位一律設(shè)為10。剩余的二進(jìn)制位為Unicode編碼。

(Python)2默認(rèn)的編碼方式是ASCII碼。

ASCII碼不支持中文,如需寫(xiě)中文解釋,則要在文件的開(kāi)頭加入#-*coding:UTF-8-*或者#coding=utf-8。

(Python3)中Python源碼文件都將以UTF-8編碼作為默認(rèn)編碼,所有的字符串都是Unicode字符串。

二、變量

Python數(shù)據(jù)類型的分類:

不可變類型是指一旦創(chuàng)建后,其值不能被修改。如重新賦值或修改值,實(shí)質(zhì)上是創(chuàng)建了一個(gè)新的對(duì)象并將變量指向該新對(duì)象,原有的對(duì)象并沒(méi)有改變。

可變類型是指可以修改其值的對(duì)象。如修改元素、添加或刪除元素,會(huì)直接操作原有對(duì)象的內(nèi)部數(shù)據(jù)。

底層實(shí)現(xiàn)原理:對(duì)于不可變類型,Python會(huì)為每個(gè)對(duì)象分配內(nèi)存,并將對(duì)象的值存儲(chǔ)在該內(nèi)存中。當(dāng)我們進(jìn)行不可變類型的操作時(shí),Python會(huì)創(chuàng)建一個(gè)新的對(duì)象并將其值存儲(chǔ)在新的內(nèi)存中,然后將變量指向新的對(duì)象。

對(duì)于可變類型,Python會(huì)為每個(gè)對(duì)象分配內(nèi)存,并將對(duì)象的引用存儲(chǔ)在內(nèi)存中。當(dāng)我們進(jìn)行可變類型的操作時(shí),Python會(huì)直接修改對(duì)象內(nèi)部的數(shù)據(jù),而不會(huì)創(chuàng)建新的對(duì)象。

理解變量類型的不可變和可變特性,有助于我們更好地理解Python中的數(shù)據(jù)處理和內(nèi)存管理。

三、控制語(yǔ)句

Python提供f(or)、while與else的組合能力,用來(lái)識(shí)別循環(huán)是否正常執(zhí)行完畢,有無(wú)跳出(break)現(xiàn)象。

foriin[1,2]:passelse:print('for循環(huán)結(jié)束,無(wú)跳出現(xiàn)象')四、函數(shù)

函數(shù)的參數(shù)分為4種類型:位置參數(shù)、關(guān)鍵字參數(shù)、默認(rèn)參數(shù)、不定長(zhǎng)參數(shù)。

(1)位置參數(shù):調(diào)用函數(shù)時(shí),傳入實(shí)參的數(shù)量和位置都必須和函數(shù)的定義保持一致。

(2)關(guān)鍵字參數(shù):調(diào)用函數(shù)時(shí),使用形式參數(shù)的名字來(lái)指定輸入的參數(shù)值。

###函數(shù)定義defgetAgeInfo(name,age):"打印任何傳入的字符串"print("Name:",name)print("Age",age)###函數(shù)調(diào)用getAgeInfo(age=50,"xiaoxiao")###age=50,為關(guān)鍵字參數(shù)注:關(guān)鍵字參數(shù)必須在位置參數(shù)之后。

(3)默認(rèn)參數(shù):定義函數(shù)時(shí),給形式參數(shù)指定一個(gè)默認(rèn)值。

###函數(shù)定義defgetAgeInfo(name,age=30):"打印任何傳入的字符串"print("Name:",name)print("Age",age)(4)不定長(zhǎng)參數(shù):函數(shù)定義時(shí),使用*pa(ram)eter表示任意個(gè)非關(guān)鍵字參數(shù),使用**parameter表示任意個(gè)關(guān)鍵字參數(shù)。

###函數(shù)定義,參數(shù)以元組的形式訪問(wèn)defgetStuName(*stuname):print("n學(xué)生名單為:")forsninstuname:print(sn)###函數(shù)定義,參數(shù)以字典的形式訪問(wèn)defgetStuName(**stuname):forsnkey,snvalueinstuname.i(te)ms():

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論