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

如何将从 text() 小部件获得的字符串转换为 int 数据类型列表?

如何将从 text() 小部件获得的字符串转换为 int 数据类型列表?

幕布斯7119047 2023-05-09 15:10:00
所以我正在尝试创建一个小型 GUI 应用程序,它可以从 text() 小部件示例中获取用户数据:112,21,33,49,5 或 12 21 33 49 5 并根据用户选择。但我现在陷入了这个问题。问题是我的逻辑适用于像 9、8、3、5、2、6 这样的单值数据,但是当我给出像 99、22、44、11 这样的数据时,它完全是垃圾。它计算每个单独的项目,然后执行其余操作。请帮我解释一下逻辑。这是从小部件获取数据并将其转换为 int 并将 int 数据附加到另一个空白列表 b[] 的代码。 b = []     a12 = entry_01.get("1.0", "end-1c")         for k in a12:                if k != ",":             c = int(k)             b.append(c)在附加所有数据后列表 b[] 准备就绪后,我然后应用搜索或排序算法。SI 只需要这部分代码的帮助。
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

如果它们总是用逗号分隔,那么像这样简单的东西就可以工作:

b = list(map(int, a12.split(",")))

如果它们可以是空格或逗号,则使用简单的正则表达式字符串就足够了:

b = list(map(int, re.split("[\s,]+", a12.strip()))


查看完整回答
反对 回复 2023-05-09
?
慕森卡

TA贡献1806条经验 获得超8个赞

这应该工作:


a12 = entry_01.get()

a13 = a12.split(",")

b = []

for k in a13:

    b.append(int(k))

   


查看完整回答
反对 回复 2023-05-09
  • 2 回答
  • 0 关注
  • 113 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信