欢迎访问宙启技术站
智能推送

用Python6种方法:给定一个不超过5位的正整数,判断有几位

发布时间:2023-05-18 08:02:45

以下是六种不同的方法,均可判断给定正整数有几位。

方法一:使用字符串长度和字符计数

num = input("输入一个正整数:")
count = num.count('1')
print("该数中共有",count,"位1")

方法二:使用字符串长度和切片

num = input("输入一个正整数:")
count = len(num) - len(num.rstrip('1'))
print("该数中共有",count,"位1")

方法三:使用整数和取余数

num = int(input("输入一个正整数:"))
count = 0
while num > 0:
    if num % 10 == 1:
        count += 1
    num //= 10
print("该数中共有",count,"位1")

方法四:使用整数和转换为字符串

num = int(input("输入一个正整数:"))
count = str(num).count('1')
print("该数中共有",count,"位1")

方法五:使用字符串和循环

num = input("输入一个正整数:")
count = 0
for i in num:
    if i == '1':
        count += 1
print("该数中共有",count,"位1")

方法六:使用递归和取余数

def count_ones(num):
    if num == 0:
        return 0
    else:
        return (num % 10 == 1) + count_ones(num // 10)

num = int(input("输入一个正整数:"))
count = count_ones(num)
print("该数中共有",count,"位1")