每日速递:Python基础Lists和tuple实例详解
目录
Lists索引和切片增删改增删除改连接/拼接tuple解包元素是可变的仍然可变namedtupleLists
列表可以包含不同类型的元素,甚至是Lists,但是通常是同一个类型的。
if __name__ == "__main__": squares = [1, 4, [1, 2], "whf", 25] print(squares)
索引和切片
列表支持使用下标索引元素,支持切片.
(资料图)
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无参数就弹出尾部的,有参数可以指定位置:
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
元素是可变的仍然可变
这个优点像java的final,不能变引用,内容你想变还是可以的:
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
具名元组,顾名思义就是让普通元组具有名字,方便对元素进行命名和访问:
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
以上就是Python之Lists和tuple实例详解的详细内容,更多关于Python Lists tuple的资料请关注脚本之家其它相关文章!
X 关闭
X 关闭
- 1联想拯救者Y70发布最新预告:售价2970元起 迄今最便宜的骁龙8+旗舰
- 2亚马逊开始大规模推广掌纹支付技术 顾客可使用“挥手付”结账
- 3现代和起亚上半年出口20万辆新能源汽车同比增长30.6%
- 4如何让居民5分钟使用到各种设施?沙特“线性城市”来了
- 5AMD实现连续8个季度的增长 季度营收首次突破60亿美元利润更是翻倍
- 6转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 7充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 8好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 9名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?
- 10亚马逊云科技成立量子网络中心致力解决量子计算领域的挑战