[::-1]的问题
代码如下:num = int(input('num = '))
num_str = str(num)
num_change = num_str[::-1]
print(num_change)
如果我输入012345
输出的是54321
为什么如果第一位不是0,就会全部输出。
请教各位大神,这是怎么回事??? 我这没啥问题啊
>>> s="012345"
>>> s[::-1]
'543210'
>>> 因为你把它转换成整数了呀
整数的第一位不能是0,Python就给去掉了 本帖最后由 wuqramy 于 2020-5-17 18:14 编辑
那是输入后int的问题
再说了int也没必要加
因为input的返回就是字符串
所以也没必要num_str这个变量
num = input('num = ')
num_change = num[::-1]
print(num_change) num = int(input('num = '))
num_str = str(num)
你不觉得 本来就是字符串你转int之后再转str有些画蛇添足 吗
这样一转,,自然把前导0 给转没了 num = int(input('num = '))
num_change = num_str[::-1]
print(num_change) 如果是一个字符串,是可以的,但你这是整数,浮点型 一个整数最大位是0就自动过滤了 num = int(input('num = '))
-这里你把输入的数直接int()转为整数了,导致你输入012345 变成 12345 楼上都是正解 在 int() 转换的时候,Python 会把 0 直接去掉 wp231957 发表于 2020-5-17 18:12
我这没啥问题啊
>>> s="012345"
人家用了 int() 但是你没有
页:
[1]