網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
前排提示:元祖是錯(cuò)誤的寫法(帶錯(cuò)別字),部分文章寫為元祖系誤,正確的說法為元組。
首先了解序列。
序列是具有先后關(guān)系的一組元素,它是一維元素向量,元素類型可以不同。
元素間由序號(hào)引導(dǎo),通過下標(biāo)訪問序列的特定元素。
序列是一個(gè)基類類型,元組、列表是序列類型的一種擴(kuò)展,繼承序列類型的全部通用操作。
(1)集合set
集合就是我們數(shù)學(xué)學(xué)的集合,集合最好的應(yīng)用是去重——集合類型所有元素?zé)o重復(fù)。可以利用{}或set()建立集合。
注:print默認(rèn)以換行符\n作為結(jié)尾,end=" "則使print以空格字符作為結(jié)尾。
(2)元組tuple
元組和列表在結(jié)構(gòu)上沒有什么區(qū)別(因?yàn)樵M、列表是序列類型的一種擴(kuò)展),唯一的差異在于元組是只讀的,創(chuàng)建后不能修改。
于是,有應(yīng)用場(chǎng)景——數(shù)據(jù)保護(hù):如果不希望數(shù)據(jù)被程序所改變,轉(zhuǎn)換為元組類型。
元組使用小括號(hào)()或tuple()創(chuàng)建。可以使用或不使用小括號(hào)。
(3)列表list
什么是列表呢?我覺得列表就是我們?nèi)粘I钪薪?jīng)常見到的清單。
比如,統(tǒng)計(jì)過去一周我們買過的東西,把這些東西列出來,就是清單。
由于我們買一種東西可能不止一次,所以清單中是允許有重復(fù)項(xiàng)的。
如果我們擴(kuò)大清單的范圍,統(tǒng)計(jì)我們過去一周所有的花費(fèi)情況,那么這也是一個(gè)清單,但這個(gè)清單里會(huì)有類別不同的項(xiàng),比如我們買東西是一種花費(fèi),交水電費(fèi)也是一種花費(fèi),這些項(xiàng)的類型是可以使不同的。
python的列表跟清單的道理是一樣的,特點(diǎn)就是:可重復(fù),類型可不同。類型不同也是跟數(shù)組最本質(zhì)的區(qū)別了。
列表創(chuàng)建后可以隨意被修改(元組不可以)。python里的列表用[ ]或list()創(chuàng)建:
(4)字典dict
最后一個(gè)是字典。字典類型是“映射”的體現(xiàn)。
字典是鍵值對(duì)的集合,鍵值對(duì)之間無(wú)序。
采用大括號(hào){}和dict()創(chuàng)建,鍵值對(duì)用冒號(hào):表示。
字典最大的價(jià)值是查詢,通過鍵,查找值。
下面是一些小例子
1、列表元組轉(zhuǎn)其他
# 列表轉(zhuǎn)集合(去重)
list1 = [6, 7, 7, 8, 8, 9]
set(list1)
# {6, 7, 8, 9}
?
#兩個(gè)列表轉(zhuǎn)字典
list1 = ['key1','key2','key3']
list2 = ['1','2','3']
dict(zip(list1,list2))
# {'key1': '1', 'key2': '2', 'key3': '3'}
?
#嵌套列表轉(zhuǎn)字典
list3 = [['key1','value1'],['key2','value2'],['key3','value3']]
dict(list3)
# {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
?
# 列表、元組轉(zhuǎn)字符串
list2 = ['a', 'a', 'b']
''.join(list2)
# 'aab'
?
tup1 = ('a', 'a', 'b')
''.join(tup1)
# 'aab
2、字典轉(zhuǎn)其他
# 字典轉(zhuǎn)換為字符串
dic1 = {'a':1,'b':2}
str(dic1)
# "{'a': 1, 'b': 2}"
?
# 字典key和value互轉(zhuǎn)
dic2 = {'a': 1, 'b': 2, 'c': 3}
{value:key for key, value in a_dict.items()}
# {1: 'a', 2: 'b', 3: 'c'}
3、字符串轉(zhuǎn)其他
# 字符串轉(zhuǎn)列表
s = 'aabbcc'
list(s)
# ['a', 'a', 'b', 'b', 'c', 'c']
?
# 字符串轉(zhuǎn)元組
tuple(s)
# ('a', 'a', 'b', 'b', 'c', 'c')
?
# 字符串轉(zhuǎn)集合
set(s)
# {'a', 'b', 'c'}
?
# 字符串轉(zhuǎn)字典
dic2 = eval("{'name':'ljq', 'age':24}")
?
# 切分字符串
a = 'a b c'
a.split(' ')
# ['a', 'b', 'c']
字典的分割、合并
分割:
base = {'A':1, 'B':2, 'C':3, 'D':4, 'E':5}
subkey = ['C', 'E']
subdict=dict([(key, base[key]) for key in subkey])
print(subdict)——{'C': 3, 'E': 5}
合并:
方式一:
d1={'user':'root','pwd':'1234'}
d2={'ip':'127.0.0.1','port':8080}
d3=dict(d1, **d2)
print(d3)
方式二:
d1={'user':'root','pwd':'1234'}
d2={'ip':'127.0.0.1','port':8080}
d3={}
for k,v in d1.items():
? ? d3[k] = v
for k,v in d2.items():
? ? d3[k] = v
print(d3)
list分割、合并
a=[1,2,3,4,5,6]
b=['a','b','c','d']
print(a+b)
?
a=[1,2,3,4,5,6]
b=['a','b','c','d']
a+=b
print(a)
?
a=[1,2,3,4,5,6]
b=['a','b','c','d']
a.extend(b)
print(a)
?
a=[1,2,3,4,5,6]
b=['a','b','c','d']
a[0:0]=b
print(a)
?
li = ['a','b','c']
res1=';'.join(li)
res2=''.join(res1).split(';')
原文鏈接:https://blog.csdn.net/weixin_46265255/article/details/108014128
相關(guān)推薦
- 2022-10-15 C語(yǔ)言中數(shù)據(jù)如何存儲(chǔ)進(jìn)內(nèi)存揭秘_C 語(yǔ)言
- 2021-12-30 C++內(nèi)存管理之簡(jiǎn)易內(nèi)存池的實(shí)現(xiàn)_C 語(yǔ)言
- 2022-07-26 css媒體查詢
- 2022-07-21 Python中直接賦值、淺拷貝和深拷貝的區(qū)別
- 2022-08-28 C++實(shí)現(xiàn)貪心算法的示例詳解_C 語(yǔ)言
- 2022-10-08 如何在React項(xiàng)目中引入字體文件并使用詳解_React
- 2022-05-12 Kotlin 接口 interface 默認(rèn)實(shí)現(xiàn)了open。并且可以提供默認(rèn)實(shí)現(xiàn)
- 2023-01-27 Python?Flask利用SocketIO庫(kù)實(shí)現(xiàn)圖表的繪制_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支