连接新字符串中的字符,然后将其转换为整数

2024-06-26 04:02:59 发布

您现在位置:Python中文网/ 问答频道 /正文

number="0123,456,789,"
cleanedNumber=''

for i in range(0,len(number)):
    if number[i] in '0123456789':
        cleanedNumber = cleanedNumber + number[i]


newNumber = int(cleanedNumber)
print("The number is {}".format(newNumber))

我不明白为什么要使用变量cleanedNumber=''?在


Tags: theinformatnumberforlenifis
3条回答

这比那容易得多。就这么做吧:

newNumber = int(filter(str.isdigit, number))

或者,或者:

^{pr2}$

原始代码只需创建一个新的字符串变量来存储原始输入的“清理”或“清理”版本。在

我们从一个字符串开始:

number="0123,456,789,"

然后发起者决定将“数字”复制到另一个字符串变量中:

^{pr2}$

为此,编写了一个for循环来读取每个字符串成员:

  for i in range(0,len(number)):
    if number[i] in '0123456789':
        cleanedNumber = cleanedNumber + number[i]

它的翻译是,对于0到原始字符串长度范围内的每个“i”,我们检查“number”字符串变量中的“i”值是否存在于“0123456789”中。如果它存在,那么我们将它复制到“cleanedNumber”变量中。在

最后,代码将其转换为int并打印:

newNumber = int(cleanedNumber)
print("The number is {}".format(newNumber))

不过,有更简单的方法来编写这段代码。在

for循环中,number中存储的原始字符串逐字符循环。在

cleanedNumber字符串仅用于存储数字。所有非数字(即0到9的字符)都不会添加到cleanedNumber字符串中。在for循环的末尾,这个新变量中只保留数字字符。在

最后,它被转换成整数并显示出来。在

相关问题 更多 >