Python中的各種符號詳解及字符串、列表、字典、集合函數相關操作


  突然發現幾個月不用python,差點忘了它,某些符號、運算符、關鍵字作用也記不起來,於是有了這篇文章,好記性不如爛筆頭。

  言歸正傳,常用的各類符號,關鍵字,運算符,一 一解釋。

1.關鍵字(Keywords)

 

關鍵字

描述

示例

and

邏輯:與

True and False == False

not

邏輯:非

not True == False

or

邏輯:或

True or False == True

pass

表示空代碼塊

del empty(): pass

del

可以刪除變量,字典和列表中特定的索引

X = [‘a’, ‘b‘, ’c‘, ’d‘, ’e‘] ;del x,刪除變量x;del X[0],刪除列表第1個值;del x[0:2],刪除列表第1-2個值,[2]對應的第3個值不刪除

import

將模塊導入當前文件以供使用

import os

is

類似於==,判斷是否一樣

1 is 1 == True

print

打印字符串

print(“Hello World!!!”)

if

if 條件

if: X; elif: Y; else:J

elif

else if 條件

if: X; elif: Y; else:J

else

else 條件

if: X; elif: Y; else:J

for

針對物件集合的循環

for X in Y: pass

while

while循環

while X:pass

in

for循環的一部分,也可以x是否在y中的條件判斷

for X in Y: pass 以及 1 in [1] == True

return

返回值並退出函數

def X(): return y

class

定義類

class Person(object)

global

聲明全局變量,通常函數內的變量是局部變量,我們可以在函數內用此函數聲明為全局變量

del x: x = "全局變量" global X

exec

將字符串作為Python腳本運行

exec  ‘print("hello")'

lambda

創建短匿名函數

s = lambda y:  y ** y;   s(3)

assert

斷言(確保)某東西為真

assert False,  "Error !"

break

立即停止循環

while True: break

continue

停止當前循環的后續步驟,再做一次循環

while True: continue

raise

出錯后引發異常

raise ValueError("No")

try

嘗試執行代碼,出錯后轉到except

try:  pass except: pass

except

如果發生異常,運行此處代碼

try:  pass except ValueError, e:  print(e)

finally

不管是否發生異常,都運行此處代碼

try:  pass finally: pass

with

with-as 語句的一部分,將表達式作為一個變量,然后執行代碼塊;它的作用和上下文管理器有關,可以自動關閉打開的文件或線程,不管在處理文件過程中是否發生異常,都能保證 with 語句執行完畢后已經關閉了打開的文件句柄。

with open('ex15_sample.txt') as X:  y = X.read() 先將open()作為變量x,然后x.read()

as

with-as 語句的一部分,可以理解為重命名,把復雜的表達式重命名簡單的字符

with open('ex15_sample.txt') as X:  y = X.read() 先將open()作為變量x,然后x.read()

yield

暫停函數,返回到調用函數的代碼中

def X():  yield Y;  X().next()

數據類型:

關鍵字

描述

示例

True

為“真 ”

True or False == True

False

為“假”

False and True == False

None

表示“不存在”或者“沒有值”

x = None

bytes

字節串存儲,可能是文本、PNG圖片、文件等

x = b ' Hello! '

strings

存儲文本信息

x = ' Hello! '

numbers

儲存整數

i = 100

Floats

存儲十進制數

i = 10.389

lists

存儲列表

i = [1, 2, 3, 4, five, sex]

dicts

存儲鍵-值映射

e = { ' x ' : 1 ,  ' y ' : 2 }

字符串格式:

轉義符

描述

示例

%d

十進制整數(非浮點數)

"%d" % 45 == '45'

%i

和%d 一樣

"%i" % 45 == '45'

%o

八進制數

"%o" % 1000 == '1750'

%u

無符號整數

"%u" % -1000 == '-1000'

%x

小寫十六進制數

"%x" % 1000 == '3e8'

%X

大寫十六進制數

"%X" % 1000 == '3E8'

%f

浮點實數

"%f" % 10.34 == '10.340000'

%F

和 %f 一樣

"%F" % 10.34 == '10.340000'

%e

指數表示,小寫e

"%e" % 1000 == '1.000000e+03'

%E

指數表示,大寫E

"%E" % 1000 == '1.000000E+03'

%g

%f 和%e 中較短的一種

"%g" % 10.34 == '10.34'

%G

和 %g 一樣,但是是大寫

"%G" % 10.34 == '10.34'

%f

浮點實數

"%f" % 10.34 == '10.340000'

%F

和 %f 一樣

"%F" % 10.34 == '10.340000'

%c

字符格式

"%c” % 34 == ‘ " ’

%r

Repr 格式(調式格式)

"%r" % int == "<type 'int'>"

%s

字符串格式

"%s there" % 'hi' == 'hi there'

%%

百分號自身

"%g%%" % 10.34 == '10.34%'

字符串轉義序列:

轉義符

描述

\'

單引號

\"

雙引號

\a

響鈴符

\b

退格符

\ |反斜杠

\f

表單填充符

\n

換行符

\r

回車

\t

制表符(tab)

\v

垂直制表符

運算符類型:

python運算符 注意點
算數運算符 % 取余 , //地板除 , ** 冪運算
比較運算符 == 比較兩個值是否相等 != 比較兩個值是否不同
賦值運算符 a += 1 => a = a+1
成員運算符 in 或 not in 判斷某個值是否包含在(或不在)一個容器類型數據當中
身份運算符 is 和 is not 用來判斷內存地址是否相同
邏輯運算符 優先級 () > not > and > or
位運算符 優先級 (<<或 >> ) > & > ^ > | 5 << 1 結果:10 , 5 >> 1 結果:2
運算符詳解

運算符

描述

示例

+

加法運算 或拼接字符串

2 +4 =6

-

減法運算

2 - 4 = -2

*

乘法運算

2 * 4 = 8

**

冪運算

2 ** 4 = 16

/

除法運算,結果一定是浮點數

2 / 4 = 0.5

//

整除或地板除,其結果舍棄小數部分

2 // 4 = 0(2/4=0.5,0.5下面的整數是0)

%

取余

2 % 4 = 2 (小除大,余數都是小的數本身)

=

賦值

x = 10

+=

相加后賦值

x += 2 等於 x = x + 2

-=

相減后賦值

x -= 2 等於 x = x - 2

*=

相乘后賦值

x = 2 等於 x = x 2

/=

相除后賦值

x /= 2 等於 x = x / 2

//=

整除后賦值

x //= 2 等於 x = x // 2

%=

取余后賦值

x %= 2 等於 x = x % 2

**=

求冪后賦值

x = 2 等於 x = x 2

==

判斷是否相等

4 == 5 == False

<

判斷是否小於

4 < 4 == False

>

判斷是否大於

4 > 4 == False

<=

判斷是否小於等於

4 <= 4 == True

>=

判斷是否大於等於

4 >= 4 == True

!=

判斷是否不等於

4 != 5 == True

(  )

括號 len('hi') == 2

[  ]

方括號

x = [1, 5, 10]

{  }

花括號

{ ' x ' :5, ' y ' : 10}

@

修飾器符

@classmethod

,

逗號

range(0, 10)

:

冒號

def x():

.

self.x = 10

;

分號

print("hi"); print("there")

字符串相關函數操作

 1 *capitalize 字符串首字母大寫 
 2 *title 每個單詞的首字母大寫 
 3 *upper 將所有字母變成大寫
 4 *lower 將所有字母變成小寫 
 5 *swapcase 大小寫互換 
 6 *len 計算字符串的長度 
 7 *count 統計字符串中某個元素的數量 
 8 *find 查找某個字符串第一次出現的索引位置 
 9 *index 與 find 功能相同 find找不到返回-1,index找不到數據直接報錯
10 *startswith 判斷是否以某個字符或字符串為開頭 
11 *endswith 判斷是否以某個字符或字符串結尾 
12 
13 #isupper 判斷字符串是否都是大寫字母 
14 #islower 判斷字符串是否都是小寫字母 
15 #istitle 判斷字符串是否每個單詞都首字母大寫 
16 #isalnum 判斷字符串是否是由數字、字母、漢字組成 
17 *isalpha 判斷字符串是否由字母和文字組成 
18 *isdigit 檢測字符串數是數字組成 接受二進制字節流 
19 *isdecimal 檢測字符串是否以數字組成  必須是純數字
20 #isnumeric 檢測字符串是否以數字組成 接受中文""
21 #isspace   判斷字符串是否由空白符組成
22 
23 *split 按某字符將字符串分割成列表(默認字符是空格)
24 *join  按某字符將列表拼接成字符串(容器類型都可)
25 #splitlines 按換行來進行切分(\n)
26 #zfill  填充字符串(默認填充0,原字符串右對齊)
27 #ljust  填充字符串,原字符居左 (默認填充空格)
28 #rjust  填充字符串,原字符居右 (默認填充空格)
29 *center 填充字符串,原字符居中 (默認填充空格)
30 *strip  默認去掉首尾兩邊的空白符 
31 #rstrip 去掉右邊某個字符 
32 #lstrip 去掉左邊某個字符 
33 
34 *replace()
35     功能:   把字符串的舊字符換成新字符
36     格式:   字符串.replace('舊字符','新字符'[, 限制替換的次數])
37     返回值: 替換之后的字符串
38 
39 #maketrans translate 是一對
40 maketrans()
41     功能:   制作用於字符串替換的映射表
42     格式:   字符串.maketrans('查找字符','替換字符')兩個字符必須長度相等
43     返回值: 字典
44 translate()
45     功能:   進行字符串替換操作
46     格式:   字符串.translate(maketrans返回的字典)
47     返回值: 替換之后的字符串
字符串相關函數

列表相關函數操作

append()**

功能:向列表的末尾添加新的元素
格式:列表.append(值)
返回值:None
注意:新添加的值在列表的末尾,該函數直接操作原有列表

**insert()**

功能:在指定索引之前插入元素
格式:列表.insert(索引,值)
返回值:None
注意:直接改變原有列表

**extend()**

功能:迭代追加所有元素
格式:列表.extend(可迭代性數據)
返回值:None
注意:直接改變原有列表

**pop()**

功能:通過指定索引刪除元素,若沒有索引移除最后那個
格式:列表.pop(索引)
返回值:刪除的元素
(注意:沒有指定索引,默認移除最后一個元素 )

**remove()**

功能:通過給予的值來刪除,如果多個相同元素,默認刪除第一個
格式:列表.remove(值)
返回值:無
(注意:如果有索引的情況推薦使用pop,效率高於remove)

**clear**()

功能:清空列表
格式:列表.clear()
返回值:空列表

**index()**

功能:獲取某個值在列表中的索引
格式:列表.index(值[,start][,end]) # []  表達參數可選項 
返回值:找到返回索引  (找不到報錯)

**count()**

功能:計算某個元素出現的次數
格式:列表.count(值)
返回值:次數

**sort()**
功能:列表排序(默認小到大排序)
格式:列表.sort(reverse=False)                        
返回值:None
注意:直接更改原列表

**reverse()**

功能:列表反轉操作
格式:列表.reverse()
返回值:None
注意:直接更改原列表

### 深拷貝淺拷貝
#copy模塊中有 淺拷貝 和 深拷貝 兩種方法
(1)淺拷貝:  淺拷貝只拷貝外層列表  內層列表跟隨原列表進行改變
    # 淺拷貝copy.copy(listvar) 或者 listvar.copy()
(2)深拷貝:  拷貝整個列表  內外列表都不跟隨原列表進行改變
    # 深拷貝copy.deepcopy(listvar)
注意:copy模塊的copy方法 和 python內置的函數copy一樣 都是淺拷貝

元組相關操作和方法
元組的相關操作除了不能修改和刪除其中的元素之外 , 剩下操作都和列表相同.
元組里面能用的方法只有 index 和 count 
列表的相關函數

字典的相關函數操作

#fromkeys()  使用一組鍵和默認值創建字典
#pop()       通過鍵去刪除鍵值對 (若沒有該鍵可設置默認值,預防報錯)
#popitem()   刪除最后一個鍵值對 
#clear()  清空字典
#update() 批量更新(有該鍵就更新,沒該鍵就添加)
#get()    通過鍵獲取值(若沒有該鍵可設置默認值,預防報錯)
#keys()   將字典的鍵組成新的可迭代對象
#values() 將字典中的值組成新的可迭代對象
#items()  將字典的鍵值對湊成一個個元組,組成新的可迭代對象 
字典的相關函數

集合中的交差並補

#intersection() 交集 
#difference()   差集   
#union()  並集         
#symmetric_difference() 對稱差集 (補集情況涵蓋在其中) 
#issubset()   判斷是否是子集
#issuperset() 判斷是否是父集
#isdisjoint() 檢測兩集合是否不相交  不相交 True  相交False
集合中的交差並補

集合相關的函數及冰凍集合

#add()    向集合中添加數據
#update() 迭代着增加
#clear()  清空集合
#pop()    隨機刪除集合中的一個數據
#remove()  刪除集合中指定的值(不存在則報錯)
#discard() 刪除集合中指定的值(不存在的不刪除 推薦使用)


#frozenset 可強轉容器類型數據變為冰凍集合
冰凍集合一旦創建,不能在進行任何修改,只能做交叉並補操作
集合相關的函數及冰凍集合 

文件操作

#打開模式 
w   write 寫入模式      
    文件不存在則創建文件,存在的話則打開清空內容,並且將文件指針放在文件的開頭

r   read  讀取模式
    文件不存在則報錯! 存在的話則打開文件,並且將文件指針放在文件的開頭

a   append 追加模式
    文件不存在則創建文件,存在的話則打開文件,*並且將文件指針放在文件的末尾*

x   xor 異或模式 (了解)
    文件已存在則報錯! 不存在的話則創建文件,將文件指針放在文件的開頭

#擴展模式 (配合打開模式的輔助模式,自己單獨不能使用)
    +   plus   增強模式(可以讓文件具有讀寫功能)       
    b   bytes  bytes模式(二進制字節流)

#模式一共16種
    w,w+,wb,wb+
    r,r+,rb,rb+
    a,a+,ab,ab+
    x,x+,xb,xb+  

# 將字符串和字節流(Bytes流)類型進行轉換 (參數寫成轉化的字符編碼格式)
    #encode() 編碼  將字符串轉化為字節流(Bytes流)
    #decode() 解碼  將Bytes流轉化為字符串

# (utf-8編碼格式下 默認一個中文三個字節 一個英文或符號 占用一個字節)
    #read()        功能: 讀取字符的個數(里面的參數代表字符個數)
    #seek()        功能: 調整指針的位置(里面的參數代表字節個數)
    #tell()        功能: 當前光標左側所有的字節數(返回字節數)

# 刷新緩沖區 flush
    # 當文件關閉的時候自動刷新緩沖區
    # 當整個程序運行結束的時候自動刷新緩沖區
    # 當緩沖區寫滿了  會自動刷新緩沖區
    # 手動刷新緩沖區
文件操作--打開模式

with  語法:自動關閉文件 相當於幫你執行了fp.close()

文件相關函數

#readline()     功能: 讀取一行文件內容
#readlines()    功能:將文件中的內容按照換行讀取到列表當中
#writelines()   功能:將內容是字符串的可迭代性數據寫入文件中 參數:內容為字符串類型的可迭代數據
#truncate()     功能: 把要截取的字符串提取出來,然后清空內容將提取的字符串重新寫入文件中 (字節)
#readable()        功能: 判斷文件對象是否可讀
#writable()        功能: 判斷文件對象是否可寫
文件相關函數

字符相關的(了解一下就行)

#字符:無論是什么語言,獨立的一個文字就是一個字符
#存儲單位:
    Byte字節
    bit:位  
    1B = 8b
    B:字節, 1Byte = 8bit
    
#字符大小:
    無論何種字符集:英文和數字都是一個字節,漢字,韓文,日文等亞洲文字采用多個字節存儲
    GB系列編碼:存儲一個漢字使用2個字節 (國標編碼:例如: gbk2312 )
    UTF系列編碼:存儲一個漢字使用3個字節(國際通用:例如: utf-8 )

#字符編碼種類: (把編碼看成一個密碼本,每一個字符在計算機中都是個二進制)
    英文原始編碼:
    ASCII碼 -> 最早的字符編碼格式->僅支持英文和特定的符號
    
    中文編碼:
    GB2312 : 包含5000個常用漢字的標准
    GB18030: 升級版本的標准,大概15000個漢字
    GBK    : 包含所有中文漢字的編碼(推薦)
    BIG5   : 繁體中文編碼       
    
    萬國碼:
    unicode 包含世界上所有的文字(無論什么字符 都按照4個字節表示)
    utf-8   可變長的unicode編碼
字符相關的(了解一下就行)

 

 

后面補充的是一些python常見的詞以及作用,望對你有用

作用

print()

打印內容到屏幕上

input

接受用戶輸入內容

import

加載其他的庫、類或函數到當前腳本

return

返回函數的結果

pydoc

在命令行查看某個函數或類的幫助文檔

help

查看類、函數、變量的幫助文檔

def

用於定義一個函數

Ture

布爾值“真”,首字母大寫

False

布爾值“假”,首字母大寫

sys

標准庫,和環境有關的功能

sys.argv

屬於sys標准庫,獲取腳本參數

open

用於打開文件,注意打開后的對象和 py2 file 的區別

TextIOWrapper

Py3 打開文本文件后的類型

TextIOWrapper.read

從當前指針位置讀取文件的內容

TextIOWrapper.readline

從指針位置讀取文件內容

TextIOWrapper.writer

向文件寫入內容

TextIOWrapper.close

關閉打開的文件,執行保存

TextIOWrapper.seek

設置文件指針位置

TextIOWrapper.tell

返回當前指針位置

os 標准庫,和系統操作有關

os.path 判斷文件是否已經存在

字符串

由引號(' " ''' """)定義的一組字符

原始字符串

字符串的引號前有字母r 或 R,其內容不會被轉義

整數

表示沒有小數的數字

浮點數

表示有小數部分的數字,浮點數運算時可能出現精度問題。

轉義字符

由 \ 和一些字符組成,被轉義的字符表示特殊的意義

科學計數法

由數字和e組成,表示數字乘以10的多少次方

 

未完,待續


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM