题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
解题思路:
1.善于用数据类型间的转换
2.善于用字符串的函数
将输入的数据转化为二进制利用bin(变量)函数,然后转化成字符串格式str(变量)
num_1 = int(input('')) # 输入数据,并转换为整数
bin_1 = str(bin(num_1)) # 将输入的数据转化为二进制数后,转化为字符串
方法1:遍历字符串,统计'1'的个数
sum_1 = 0
for i in bin_1:
if i == '1':
sum_1 = sum_1 + 1
print(sum_1)
方法2:利用字符串函数 字符串变量.count(元素) 统计元素的个数
sum_1 = bin_1.count('1')

查看13道真题和解析