关于python的问题? 255

my_list=[1,2,3,4,"5"]int(my_list[4])number=int(input("请输入一个number:"))#number=int(numb... my_list = [1, 2, 3, 4, "5"]
int(my_list[4])
number = int(input("请输入一个number:"))
# number = int(number)
for i in my_list:
print(f"{i}/{number}={i/number}")
的报错内容是
Traceback (most recent call last):
File "/Users/jack/Desktop/04 流程控制/0011-04-01000000/04-03.py", line 18, in <module>
print(f"{i}/{number}={i/number}")
TypeError: unsupported operand type(s) for /: 'str' and 'int'
展开
 我来答
紫薇参星
科技发烧友

2021-08-03 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3788万
展开全部

你的程序大部分都没错,只是对列表my_list中的字符串元素"5"转数值元素时,要把转换结果赋值给原元素,

否则列表my_list没改变,导致处理字符串元素"5"时,出现不支持字符串和整数相除操作的错误.

完整的Python程序如下(改动的地方见注释,仅一处有问题)

my_list = [1, 2, 3, 4, "5"]

my_list[4]=int(my_list[4]) #这里把int(my_list[4])改成my_list[4]=int(my_list[4])

number = int(input("请输入一个number:"))

for i in my_list:

 print(f"{i}/{number}={i/number}")

源代码(注意源代码的缩进)

pieryon
2021-08-03 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14410 获赞数:166879
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部

改成这样:

my_list = [1, 2, 3, 4, "5"]

number = int(input("请输入一个number:"))

for i in my_list:

    temp=int(i)

    print(f"{i}/{number}=",temp/number)

运行结果如下:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光的雷咩咩
2021-08-03 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:8200万
展开全部
my_list = [1, 2, 3, 4, "5"]
这里5的双引号去掉
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
斩草先除根0z
2021-08-04
知道答主
回答量:18
采纳率:0%
帮助的人:6689
展开全部

当i遍历到"5"的时候,代码第六行为"5"/number,由于字符串不能运算,所以报错


解决方法:1.把my_list里的"5"改成整数5

                 2.把代码最后一行的 i/number 改成 int(i)/number

望采纳!!!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式