2024.1.22 Python学习笔记8(序列)

本文介绍了Python中列表、元组和字符串之间的相互转换,强调了str()函数的局限性。同时,讨论了迭代器的概念,包括如何创建、使用next函数以及迭代器的单次使用特性。
摘要由CSDN通过智能技术生成

列表、元组、字符串相互转换

  1. list():将序列转换为列表;
  2. tuple():将序列转换为元组;
  3. str():将序列转换为字符串。
list_a=[1,2,3,4,5]
tuple_b=(1,2,3,4,5)
str_c='12345'
print(tuple(list_a),str(list_a))
print(list(tuple_b),str(tuple_b))
print(tuple(str_c),list(str_c))
'''
(1, 2, 3, 4, 5) [1, 2, 3, 4, 5]
[1, 2, 3, 4, 5] (1, 2, 3, 4, 5)
('1', '2', '3', '4', '5') ['1', '2', '3', '4', '5']
'''

实际上,将列表、元组变为字符串的str函数很蠢,只是在最外侧添加了引号,即生成的字符串分别是'[1,2,3,4,5]'、'(1,2,3,4,5)',并不是想象中的'12345'。

迭代器

迭代器属于可迭代对象,可通过iter函数获得。此外,部分列表、字符串、元组处理方法返回内容是迭代器,需要注意其中区别。

x=[1,2,3,4,5]
y=iter(x)
print(type(x),type(y))
#<class 'list'> <class 'list_iterator'>

next函数可以取出迭代器第一个元素,当迭代器为空时,调用next函数会报错,或者输出指定内容。

x=[1,2,3,4,5]
y=iter(x)
for i in range(7):
    print(next(y,'取完了'),end=' ')
#1 2 3 4 5 取完了 取完了
#迭代器y中只有5个元素,每次next函数取出一个元素。
#在第6、7轮循环中为空,此时调用next函数,
#如果不使用'取完了'参数,会输出报错信息。

迭代器为一次性内容,即,迭代器只能用于一次迭代,使用后清除。

mapped=map(lambda x:x**2,[1,2,3,4,5])
for i in mapped:
    print(i)#依次输出1 4 9 16 25
print(list(mapped))
#输出内容为[],空列表,代表mapped为空

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值