鱼C论坛

 找回密码
 立即注册
查看: 1994|回复: 6

[已解决]关于print

[复制链接]
发表于 2021-10-8 15:15:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
dict1 = ...
dict2 = ...
dict3 = ...
for i in range(1,4):
    print(dicti)

这样时无法依次print dict123的 好像程序把dict i 看成了一个整体 说我没有定义它
如何才能依次print呢
最佳答案
2021-10-8 15:31:41
将字符串'dict' 和 字符串 str(i) 拼接成新的字符串
这样就有了f'dict{i}'这样的新字符串
eval()简单来说就是去引号
字符串'dict1'去引号,就成了变量名dict1

搭配f字符串更好使用
dict1 = ...
dict2 = ...
dict3 = ...
for i in range(1,4):
    print(eval(f'dict{i}'))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-8 15:20:12 | 显示全部楼层
dict1 = ...
dict2 = ...
dict3 = ...
for i in range(1,4):
    print(eval('dict'+str(i)))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-10-8 15:24:53 | 显示全部楼层

能解释一下print(eval('dict'+str(i)))这个语句吗 尤其是eval的作用 谢谢啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-8 15:31:41 | 显示全部楼层    本楼为最佳答案   
将字符串'dict' 和 字符串 str(i) 拼接成新的字符串
这样就有了f'dict{i}'这样的新字符串
eval()简单来说就是去引号
字符串'dict1'去引号,就成了变量名dict1

搭配f字符串更好使用
dict1 = ...
dict2 = ...
dict3 = ...
for i in range(1,4):
    print(eval(f'dict{i}'))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-8 15:34:07 | 显示全部楼层
dict1 = {1: 2}
dict2 = {2: 3}
dict3 = {3: 4}
for i in range(1, 4):
    print(globals()['dict%s'%i]

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
傻眼貓咪 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-10-8 17:22:51 | 显示全部楼层
逃兵 发表于 2021-10-8 15:31
将字符串'dict' 和 字符串 str(i) 拼接成新的字符串
这样就有了f'dict{i}'这样的新字符串
eval()简单来说 ...

这里f有什么意思吗,还有什么地方可以用到f呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-8 17:30:32 From FishC Mobile | 显示全部楼层
Jerry~Mouse 发表于 2021-10-8 17:22
这里f有什么意思吗,还有什么地方可以用到f呢

字符串格式化
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 03:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表