如何在任何给定的整数中显示一个的数量?
我是python的新手所以请记住这一点。
我需要用户输入一个整数。
然后我想让它吐出他们输入的数字中有多少人。
我正在使用python 3.3.4
我如何使用以下代码执行此操作?
num = int(input ("Input a number containing more than 2 digits"))
count = 0
for i in range (0):
if num(i) == "1":
count = count + 1
print (count)
我不知道我做错了什么 它给了'int'对象不可调用的错误
答案 0 :(得分:1)
这样的事情:
Int不可迭代,因此您可能需要转换为字符串:
>>> num = 1231112
>>> str(num).count('1')
4
>>>
答案 1 :(得分:0)
为了帮助您,这是一个从右到左打印每个数字的功能。
def count_ones(num):
while num:
print(num % 10) # last digit
num //= 10 # get rid of last digit
答案 2 :(得分:0)
num = 1112111
answer = str(num).count("1")
答案 3 :(得分:0)
str(num).count('1')工作正常,但是如果你只是在学习python并想编写你自己的程序来编写它,我会使用这样的东西,但是你在使用您提供的代码的正确轨道:
count = 0
for i in str(num):
if i == "1":
count = count + 1 # or count += 1
print(count)
答案 4 :(得分:0)
num = int(input (" Input a number to have the number of ones be counted "))
count = 0
for i in str(num):
if i == "1":
count = count + 1 # or count += 1
print (' The number of ones you have is ' + str(count))
所以我接受了用户输入并将其添加到正确的答案,因为当我尝试crclayton的答案时它没有工作。所以这对我有用。