美文网首页
Python编程练习8

Python编程练习8

作者: AlexDM | 来源:发表于2017-03-31 22:54 被阅读24次
    因幕起 因灯亮 因众人的鼓掌 才发现 我的歌 竟是这一剧中的辉煌

    中间暂停了一段时间的练习,应该惩罚一下,这个周末就行动起来,自我惩罚。
    接下来继续python的练习,今天的题目也比较简单。
    输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
    这里面应用了python的自带函数bin,可以将数字转换为二进制,然后用count统计1出现的次数。对于统计0的次数,就要注意了,二进制前面是0b开头的,所以还要减一。

    a=input()
    print list(bin(a)).count('1')  # 可以把list函数去掉
    
    #看到一个写的很完整的:
    # !/usr/bin/env python
    # -*- coding:utf-8 -*-
    import sys
    def countone(num):
        c = 0
        change_num = '{0:b}'.format(num)
        for item in change_num:
            if item == '1':
                c += 1
        return c
     
    if __name__ == '__main__':
        try:
            while True:
                input_str = sys.stdin.readline().strip()
                if input_str == '':
                    break
                print(countone(int(input_str)))
        except:
            pass
    

    参考资料:https://www.nowcoder.com

    相关文章

      网友评论

          本文标题:Python编程练习8

          本文链接:https://www.haomeiwen.com/subject/nsjbottx.html