目录
题目描述
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
输入/输出描述:
输入 | 5 |
输出 | 2 |
说明 | 因为整数5转换为2进制是0101,存在两个1,因此输出2 |
解决方案
将输入的整数转换成二进制字符串,计算字符串中字符“1”的数量。
代码
if __name__ == "__main__":
try:
number = int(input())
if number <= 0:
raise Exception
bin_number_str = bin(number)
result = bin_number_str.count("1")
print(result)
except Exception:
exit()
代码走读
if __name__ == "__main__":
try:
# 输入一个整数,若输入的数据不大于0,结束程序
number = int(input())
if number <= 0:
raise Exception
# 将整数转换成二进制字符串
bin_number_str = bin(number)
# 计算字符串中字符‘1’的个数,并打印结果
result = bin_number_str.count("1")
print(result)
except Exception:
exit()
传送门
1. input()函数
Python input函数_TCatTime的博客-优快云博客
2. int()函数
Python int函数_TCatTime的博客-优快云博客_int函数python
3. str.count()方法
Python str count()方法_TCatTime的博客-优快云博客_str.count
4. print()函数
Python print函数:将内容打印到标准输出_TCatTime的博客-优快云博客
5. Python Exception异常
6. exit()函数