python基礎語法之後 Python基礎語法

2021-10-11 20:32:25 字數 3054 閱讀 1611

python內部執行流程

編碼預設情況下,python3原始碼檔案以utf-8編碼,所有字串都是unicode字串。當然也可以為原始碼檔案指定不同的編碼:

#-*- coding: cp-1252 –*-

1. ascii

python2的直譯器在載入.py檔案中的**時,會對內容進行編碼(預設ascii)

ascii是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言,其最多只能用8位來表示(1個位元組),即:2**8=256.所有ascii碼最多只能表示256個符號

2. unicode

unicode(統一碼、萬國碼、單一碼)是電腦科學領域裡的一項業界標準,包括字符集、編碼方案等。unicode 是為了解決傳統的字元編碼方案的侷限而產生的,它為每種語言中的每個字元設定了統一並且唯一的二進位制編碼,以滿足跨語言、跨平台進行文字轉換、處理的要求。unicode規定所有的字元和符號最少由16位來表示(2個位元組),即:2**16=65536

3.utf-8

utf-8(8-bit unicode transformation format)是一種針對unicode的可變長度字元編碼。由ken thompson於2023年建立。現在已經標準化為rfc 3629。utf-8用1到4個位元組編碼unicode字元。用在網頁上可以同一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。它不在使用最少兩個位元組,而是對所有的字元和符號進行分類:ascii碼中的內容使用1個位元組、歐洲字元使用2個位元組、東亞字元使用3個位元組……

識別符號在程式語言中,識別符號就是程式設計師自己規定的具有特殊含義的詞,比如:類名、函式名、屬性名、變數名等。

第乙個字元必須是字母表中的字元或者下劃線「_」

識別符號的其他部分可以由字母、數字和下滑線組成

識別符號區分大小寫

python3中,非ascii識別符號也是允許的

以下劃線開頭的識別符號具有特殊意義。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用「from *** import ***」而匯入;以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結尾的(__foo__)代表python裡的特殊方法專用的標識,如__int__()代表類的建構函式。

python保留字

保留字即關鍵字,不能把保留字用作任何識別符號名稱。python的標準庫提供了乙個keyword module,可以輸出當前版本的所有關鍵字:

>>> importkeyword>>>keyword.kwlist

['false', 'none', 'true', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

注釋python中的單行注釋以#開頭

#!/usr/bin/env python#coding=utf-8

#第一行注釋

print("hello world!") #第一行注釋

"""多行

注釋"""

'''多行

注釋'''

行與縮排

python中通過使用縮進來表示**塊,不需要使用大括號「{}」,縮排的空格數是可變的,但是同乙個**塊語句的縮排空格數必須一致。

iftrue:print("true")else:print("false")

如果縮排不一致,會導致執行錯誤

#!/usr/bin/python3#-*- coding: utf-8 -*-#檔名:test.py

iftrue:print("answer")print("true")else:print("answer")#沒有嚴格縮排,在執行時保持

print("false")

le "/****/****", line

print("false")^indentationerror: unexpected indent

單語句多行

python通常一行寫完乙個語句,但如果語句很長,可以使用反斜槓「\」來實現多行語句,例如:

a = "a"b= "b"c= "c"abc= a +\

b+\c

在」」、」{}」、」()」中的不需要使用反斜槓「\」,例如:

a =

b= """keep

live"""c= '''home

work'''

資料型別

數字布林值

字串列表

字典元組

空行函式之間或類的方法之間用空行分隔,表示一段新的**的開始。類和函式的入口之間也用一行空行分隔,以突出函式入口的開始。空行與**縮排不同,空行並不是python語法的一部分。書寫時不插入空行,python直譯器也不會報錯。但是空行可以分隔兩段不同功能或含義的**,便於日後的維護和重構。

注:空行也是程式**的一部分

多語句單行

python中可以在同一行中使用多條語句,語句之間使用分號「;」分隔。

如下例項:

#!/usr/bin/python3

import sys; x = 'runoob'; sys.stdout.write(x + '\n')

多個語句構成**組

縮排相同的一組語句構成乙個**塊,我們稱之為**組。像if、while、def、class這樣的復合語句,首行以關鍵字開始,以冒號「:」結束,該行之後的一行或多長**構成**組。我們將首行及後面的**組成為乙個子句(clause)。

如下例項:

ifexpression :

suiteelifexpression :

suiteelse:

suite

.pyc檔案

執行python**時,如果匯入了其他的.py檔案,那麼在執行過程中會自動生成乙個與其同名的.pyc檔案,該檔案就是python直譯器編譯之後產生的位元組碼

注:**經過編譯可以產生位元組碼,位元組碼通過反編譯也可以得到**

python學會基礎語法之後,如何提高?

1.找到發展方向,選擇合適的學習線路圖 我一直都認為找到未來發展方向才是最重要的事情。我說說我自己吧,我一開始覺得python有發展方向,因為我是乙個做推廣的,也涉及到seo相關工作。我深知道資料的重要性,開始只是對python有了濃厚的興趣,一腔熱血準備學習python。但是,學了一些基礎知識之後...

Python基礎 Python語法基礎

關鍵字是python語言的關鍵組成部分,不可隨便作為其他物件的識別符號 andas assert break class continue defdel elif else except exec finally forfrom global ifimport inis lambda notor p...

UltraEdit設定語法高亮支援python

ultraedit預設不支援python的語法高亮,通過以下設定可實現語法高亮 1.在 下有各種語言的語法高亮支援,找到對應的python版本,現在已有的為python2.5和2.6,開啟鏈結,將頁面內容儲存為.uew格式,我使用的是python2.6,儲存為python2.6.uew 3.需要注意...