列表 字典 集合推導式用法介紹

2021-10-06 14:33:20 字數 1536 閱讀 7055

# -*- coding: utf-8 -*- 

# @file : 補充.py

# 描述 : 布林值,zip() 隨機數 列表、字典、集合推導式

# @time : 2020/5/28 18:23

# @author : 崔

# @versions : 1.0

# 1、bool型 假的值有:none、0、0.0、false、所有的空容器(空列表、空元組、空字典、空集合、空字串),其它是真

# 2、zip()函式

# zip() 函式⽤於將可迭代的物件作為引數,將物件中對應的元素打包成⼀個元組,然後返回由這些元組組成的列表

import random

a = [1, 2, 3, 4]

b = [2, 3, 4]

res = zip(a, b)

print(res) # 是乙個物件,需要迭代出來

print(list(res)) # [(1, 2), (2, 3), (3, 4)]

# 可以使⽤for-in 遍歷

for x, y in zip(a, b):

print(x, y)

# # 3、隨機數 import random

s1 = [134, 45, 56, 67, 34, 23, 254]

print(random.choice(s1)) # choice(引數) 返回序列,列表,元組、字串中乙個隨機元素

print(random.randint(0, 3)) # [0.3]

print(random.randrange(0,10,2))

random.shuffle(s1) # 將序列元素隨機排列(打亂順序)

print(s1) # 將序列元素隨機排序

# 列表推導式

'''[exp for value in list (if表示式)] exp為表示式, if可選

'''l1 = [x*x for x in range(6)]

print(l1)

l2 = [x*x for x in range(6) if x % 2 == 0]

print(l2)

# 模擬撲克牌洗牌

yanse = ['紅桃', '方片', '黑桃', '梅花']

dianshu = ['a', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'j', 'q', 'k']

poke = [[x, y] for x in yanse for y in dianshu]

random.shuffle(poke)

print(poke)

# 集合表示式

''''''

res =

print(res)

# 字典推導式

''''''

d1 =

print(d1)

s = "sjksdaaafadsfa"

d2 =

print(d2)

列表字典推導式

1 pep8規範 命名 2 深淺拷貝 3 迭代器,生成器 generator 這種一邊迴圈一邊計算的機制,稱為生成器,生成器其實是一種特殊的迭代器,不需要自定義 iter 和 next 自定義乙個迭代器,實現斐波那契數列 class fib object def init self,max self...

列表 字典推導式

用來快速建立列表就叫做列表推導式 方法1 列表 表示式 for x in 序列 產生乙個新的列表,變數在序列中沒取乙個元素,就將表示式的值新增到新列表中 方法二 列表 表示式 for 變數 in 序列 if 條件語句 方法三 列表 表示式 for 變數1 in 序列1 for 變數2 in 序列2 ...

Python 列表 集合 字典推導式

列表推導式 用乙個表示式建立乙個有規律的列表或控制乙個有規律列表。列表推導式又叫做列表生成式 原理 將for迴圈 包括其內部所有前置語句 都簡寫在乙個括號內 注意 列表推導式實現的時候,可以是for if,也可以是for for巢狀等 形式 字典推導式 快速合併列表為字典或提取字典中目標資料 注意 ...