大执法官 发表于 2020-8-18 20:25:13

关于isdecimal的返回值

>>> str2 = "11,22,33"
>>> str2.isdecimal()
False
在shell里面这样输入,会返回False,求解惑

zltzlt 发表于 2020-8-18 20:25:31

字符串内必须是纯数字

Twilight6 发表于 2020-8-18 20:27:46



isdecimal() 是 如果字符串只包含十进制数字则返回 True,否则返回 False。

所以你字符串中有 , 逗号字符不是纯数字,则返回 False

大执法官 发表于 2020-8-18 20:31:32

Twilight6 发表于 2020-8-18 20:27
isdecimal() 是 如果字符串只包含十进制数字则返回 True,否则返回 False。

所以你字符串中有 , 逗 ...

这样的吗,那如何在有逗号的情况下让他返回True呢

大执法官 发表于 2020-8-18 20:32:11

zltzlt 发表于 2020-8-18 20:25
字符串内必须是纯数字

谢谢{:5_109:}

Twilight6 发表于 2020-8-18 20:41:19

大执法官 发表于 2020-8-18 20:31
这样的吗,那如何在有逗号的情况下让他返回True呢

自己学习到函数的时候,可以自己写一个小函数就好,直接进行判断是没办法的

不写函数你可以这样,先用 split 切割逗号,然后用 join 拼接字符串,然后判断即可:
str2 = "11,22,33"
print(''.join(str2.split(',')).isdecimal())

大执法官 发表于 2020-8-18 20:45:44

Twilight6 发表于 2020-8-18 20:41
自己学习到函数的时候,可以自己写一个小函数就好,直接进行判断是没办法的

不写函数你可以这样,先 ...

这个print里的,,,没看懂,是后面会讲到有这样的用法吗

Twilight6 发表于 2020-8-18 20:49:50

大执法官 发表于 2020-8-18 20:45
这个print里的,,,没看懂,是后面会讲到有这样的用法吗


join 甲鱼哥没怎么说,但是这个函数蛮常用的

就是将序列中的元素以指定的字符连接生成一个新的字符串

举个例子,比如:

'!!!'.join(a)就是将 序列 a 中的字符串全部间隔 !!! 三个感叹号,然后拼接在一起

大执法官 发表于 2020-8-19 08:20:59

Twilight6 发表于 2020-8-18 20:49
join 甲鱼哥没怎么说,但是这个函数蛮常用的

就是将序列中的元素以指定的字符连接生成一个新的字符 ...

join知道,就是print里面的“”.join,这个‘’是什么意思
页: [1]
查看完整版本: 关于isdecimal的返回值