为了账号安全,请及时绑定邮箱和手机立即绑定

在 Python 中从字符串中分离并创建迭代变量

在 Python 中从字符串中分离并创建迭代变量

慕码人2483693 2023-02-15 15:43:13
我有这个字符串:number = "0123456789"我想创建具有字符串值的迭代变量。例如,我想要一个像这样的字符串a1 =1, a3=3,... a8=8请指教。谢谢
查看完整描述

5 回答

?
茅侃侃

TA贡献1842条经验 获得超21个赞

问题有歧义。我解决了以下部分:“我想创建具有字符串值的迭代变量。”


如果你解决了动态创建变量的问题,你就产生了一个新问题——如何动态访问它们。因此,最好使用一些内置的数据结构,如列表、元组或字典。


记住这一点回答问题:


number = '0123456789'   


for num in number:                                  

    globals()[f'a{num}'] = int(num)

此代码将创建具有相应整数值的变量 a0、a1...a9。


查看完整回答
反对 回复 2023-02-15
?
MM们

TA贡献1886条经验 获得超2个赞

为了制作一个具有索引的可迭代对象,我做了类似的事情:


number = "0123456789"

new_number = ""

for i in number:

    if i != number[-1]:

        new_number += i + " "

    else:

        new_number += i

iterable = new_number.split(" ")

如果您对此感兴趣,这可能会变得不那么混乱,但这可以解决问题。注意:可迭代对象中的元素将是字符串。


查看完整回答
反对 回复 2023-02-15
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

我认为您正在寻找的是迭代器函数 - 即iter()


例如:


number = '0123456789'

iterator = iter(number)

然后,有了next(),我们可以做这样的事情:


next(iterator)

'0'

next(iterator)

'1'

即可以使用next函数获取下一个值。


查看完整回答
反对 回复 2023-02-15
?
森林海

TA贡献2011条经验 获得超2个赞

您可以遍历变量编号中的每个字符,但必须将其类型转换为字符串。请注意,这number=0123456789在 Python 中会出错。您需要一个字符串值。所以将数值类型转换为字符串将解决它。


例子:


number = str(123456789)

for i in number:

    globals() ['a'+i] = int(i)

然后你可以像往常一样使用创建的变量:


print(a1)

print(a9)

这将输出:


1

9

我希望这回答了你的问题。


查看完整回答
反对 回复 2023-02-15
?
偶然的你

TA贡献1841条经验 获得超3个赞

这样就可以了

res = ', '.join(['a{}={}'.format(i,i) for i in number])

输出

'a0=0, a1=1, a2=2, a3=3, a4=4, a5=5, a6=6, a7=7, a8=8, a9=9'


查看完整回答
反对 回复 2023-02-15
  • 5 回答
  • 0 关注
  • 168 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号