網(wǎng)站首頁 編程語言 正文
Lists
列表可以包含不同類型的元素,甚至是Lists,但是通常是同一個類型的。
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
print(squares)
索引和切片
列表支持使用下標(biāo)索引元素,支持切片.
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
item1 = squares[0]
print(item1)
item2 = squares[-1]
print(item2)
squaresShallowCopy = squares[1:3]
print(squaresShallowCopy)
print(squaresShallowCopy[0])
squaresShallowCopy[1:2]=[]
print(squaresShallowCopy)
輸出:
1
25
[4, [1, 2]]
4
[4]
所有切片操作都會返回一個包含請求元素的新列表,被稱為原列表的淺副本。
增刪改
增
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
squares.insert(1,3)
print(squares)
輸出:
[1, 3, 4, [1, 2], 'whf', 25]
刪除
pop無參數(shù)就彈出尾部的,有參數(shù)可以指定位置:
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
squares.pop(1)
print(squares)
輸出:
[1, [1, 2], 'whf', 25]
改
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
squares[0]=0
print()
輸出:
[0, 4, [1, 2], 'whf', 25]
連接/拼接
if __name__ == '__main__':
squares = [1, 4, [1, 2], "whf", 25]
squares+=[66,77]
print(squares)
squares.append("88")
print(squares)
print(len(squares))
輸出:
[1, 4, [1, 2], 'whf', 25, 66, 77]
[1, 4, [1, 2], 'whf', 25, 66, 77, '88']
8
tuple
tuple和list比較類似,但是tuple是不可變的,所以不能增刪改。
tuple使用括號括起來,使用逗號分隔元素,如果是簡單的元組可以不用:
t = 1, 2, 3
print(t)
t = ((1, 2, 3), (4, 5, 6))
print(t)
empty = ()
print(empty)
singleton = 'hello',
print(singleton)
print(len(singleton))
輸出:
((1, 2, 3), (4, 5, 6))
()
('hello',)
1
解包
t = 1, 2, 3
x, y, z = t
print(x, y, z)
輸出:
1 2 3
元素是可變的仍然可變
這個優(yōu)點(diǎn)像java的final,不能變引用,內(nèi)容你想變還是可以的:
if __name__ == '__main__':
t = ((1, 2, 3), [4, 5, 6])
list=t[1]
list[0]=3
print(t)
輸出:
((1, 2, 3), [3, 5, 6])
namedtuple
具名元組,顧名思義就是讓普通元組具有名字,方便對元素進(jìn)行命名和訪問:
Student = namedtuple('Student', ['name', 'age', 'city'])
s = Student('Xiaoming', '19', 'Beijing')
print(s)
print(s[1])
print(getattr(s, 'city'))
輸出:
Student(name='Xiaoming', age='19', city='Beijing')
19
Beijing
原文鏈接:https://juejin.cn/post/7135421305284722702
相關(guān)推薦
- 2023-07-08 如何讓element-ui的el-row內(nèi)容居中(水平垂直)
- 2023-02-25 Golang合并yaml文件過程逐步講解_Golang
- 2023-01-07 Python個人博客程序開發(fā)實例信息顯示_python
- 2022-09-04 Apache?Kafka?分區(qū)重分配的實現(xiàn)原理解析_Linux
- 2022-10-19 R語言初學(xué)者的一些常見報錯指南_R語言
- 2022-10-24 golang程序進(jìn)度條實現(xiàn)示例詳解_Golang
- 2022-06-16 python遺傳算法之單/多目標(biāo)規(guī)劃問題_python
- 2023-07-26 TypeScript中的類型聲明declare
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- 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錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支