Python運算子和推導式

2021-10-08 20:12:49 字數 3926 閱讀 9189

運算子

描述支援的容器型別+合併

字串、列表、元組*複製

字串、列表、元組

in元素是否存在

字串、列表、元組、字典

not in

元素是否不存在

字串、列表、元組、字典

str1, str2 =

"aa"

,"bb"

list1, list2 =[1

,2],

[10,20

]t1, t2 =(1

,2),

(10,20

)dict1, dict2 =

,# + : 合併

print

(str1 + str2)

# aabb

print

(list1 + list2)

# [1, 2, 10, 20]

print

(t1 + t2)

# (1, 2, 10, 20)

print

(dict1 + dict2)

# 報錯

str1 =

"a"list1 =

["hello"

]t1 =

("world",)

print

(str1 *5)

# aaaaa

print

(list1 *5)

# ['hello', 'hello', 'hello', 'hello', 'hello']

print

(t1 *5)

# ('world', 'world', 'world', 'world', 'world')

元素 in

/not

in 序列 # 返回true 或 false

函式

描述len()

計算容器中元素個數

del 或 del()

刪除max()

返回容器中元素最大值

min()

返回容器中元素最小值

range(start,end,step)

生成從start到end的數字,不包含結束,步長為step,供for迴圈使用,可以省略開始就預設從0開始,可不寫步長,預設為1。

enumerate()

函式用於將乙個可遍歷的資料物件(如列表、元組、字串)組合為乙個索引序列,同時列出資料和資料下標,一般用在for迴圈當中。

enumerate

(可遍歷物件, start =

0)

注意:start引數用來設定遍歷資料的下標的起始值,預設為0。

list1 =

["a"

,"b"

,"c"

,"d"

,"e"

]# enumerate 返回結果是元組,元組第乙個資料是原迭代物件的資料對應的下標,第二個資料是原迭代物件的資料

for i in

enumerate

(list1)

:print

(i)for index, char in

enumerate

(list1, start=1)

:print

(f"下標是, 對應的字元是"

)

作用:將某個序列轉換成元組

list1 =[10

,20,30

,40]s1 =

print

(tuple

(list1)

)print

(tuple

(s1)

)

list1 =[10

,20,30

,40,10

]s1 =

t1 =

("a"

,"b"

,"c"

,"d"

)print

(list

(s1)

)print

(list

(t1)

)

list1 =[10

,20,30

,40,10

]s1 =

t1 =

("a"

,"b"

,"c"

,"d"

)print

(set

(list1)

)# 注意set 的去重功能

print

(set

(t1)

)

作用:用乙個表示式建立乙個有規律的列表或控制乙個有規律列表,列表推導式又叫列表生成式

# 建立乙個0 - 10 的列表

list1 =

i =0

while i <10:

i +=

1print

(list1)

list1 =

for i in

range(10

):print

(list1)

list1 =

[i for i in

range(10

)]print

(list1)

# 建立0-10的偶數列表

list1 =

[i for i in

range(0

,10,2

)]print

(list1)

list2 =

[i for i in

range(10

)if i %2==

0]print

(list2)

# 建立如下列表[(

1,0)

,(1,

1),(

1,2)

,(2,

0),(

2,1)

,(2,

2)]list1 =

[(i, j)

for i in

range(1

,3)for j in

range(3

)]print

(list1)

作用:快速合併列表為字典或提取字典中的目標資料

# 建立乙個字典:字典key為1-5的數字,value是這個數字的平方

dict1 =

print

(dict1)

list1 =

["name"

,"age"

,"gender"

]list2 =

["tom",20

,"man"

]dict1 =

print

(dict1)

注意:

如果兩個列表資料個數相同,len統計任何乙個列表的長度都可以。

如果兩個列表資料個數不同,len統計資料多的列表資料個數會報錯;len統計資料少的列表資料個數不會報錯。

counts =

# 需求:提取上述電腦數量大於等於200的字典資料

count1 =

print

(count1)

需求:建立乙個集合,資料為下方列表的2次方

list1 =[1

,2,3

]set1 =

print

(set1)

注意:集合有資料去重功能

python 運算子 Python運算子

python語言支援以下型別的運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 1 算術運算子 加號 減號 乘 除 取餘 乘方 整除 1 其中除號 要注意 在python2中,用作整除。解決方法有三 1 兩個相除的數中有乙個為實數。2 ...

python 運算子 python(運算子)

一 運算子 1.算數運算子 1 加 注意 字串與整數之間不能進行相加,需要通過str 或int 進行轉換資料型別 整數與整數相加 1 1 浮點數與浮點數相加 2.0 2.0 4.0 二進位制儲存精度誤差 1.1 1.3 2.4000000000000004 整數與浮點數相加 2 2.0 4.0字串之...

python增強運算子 Python 運算子過載

python語言提供了運算子過載功能,增強了語言的靈活性,這一點與c 有點類似又有些不同。鑑於它的特殊性,今天就來討論一下python運算子過載。python語言本身提供了很多魔法方法,它的運算子過載就是通過重寫這些python內建魔法方法實現的。這些魔法方法都是以雙下劃線開頭和結尾的,類似於x的形...