• python核心编程笔记——Chapter8


    Chapter8.条件和循环

    这一章感觉有用的点并不多,在我眼里就只有迭代器,列表解析和生成器表达式值得研究而已。

    8.2.循环,难度不大。

    1 #!usr/bin/env python
    2 #-*-coding=utf-8-*-
    3 
    4 def ran(From,To,Increment):
    5     return range(From,To+Increment,Increment)
    6 
    7 if __name__ == '__main__':
    8     print ran(2,26,4)

    8.3.range()

    >>> range(0,10)
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> range(3,21,3)
    [3, 6, 9, 12, 15, 18]
    >>> range(-20,1080,220)
    [-20, 200, 420, 640, 860]

    8.5.约数,完成一个名为getfactors()的函数。它接受一个整型作为参数,返回它所有约数的列表,包含1和它本身。可以考虑使用列表解析。

    1 #!usr/bin/env python
    2 #-*-coding=utf-8-*-
    3 
    4 def getfactors(n):
    5     return [x for x in range(1,n+1) if n % x == 0]
    6 
    7 if __name__ == '__main__':
    8     print getfactors(6)

    8.6素因数分解,本来想用很简洁的方式去解决的,但是发现自己没那本事,呜呜。。

     1 #!usr/bin/env python
     2 #-*-coding=utf-8-*-
     3 
     4 def getfactors(n):
     5     return [x for x in range(1,n+1) if n % x == 0]
     6 
     7 def factors(n):
     8     m = []
     9     while n > 1:
    10         for x in range(2,n+1):
    11             if n % x == 0:
    12                 m.append(x)
    13                 n /= x
    14                 break
    15     return m
    16 
    17 if __name__ == '__main__':
    18     print factors(20)

    8.10.文本处理,要求统计一篇文本上面的单词个数。试一下吧(先考虑单词之间只有空格的情况)

    1 #!usr/bin/env python
    2 #-*-coding=utf-8-*-
    3 
    4 def num_of_word(filename):
    5     return len([y for x in open(filename) for y in x.split()])
    6 
    7 if __name__ == '__main__':
    8     print num_of_word('/home/dzhwen/python文件/Homework/Chapter8/123.txt')

    其他题目没什么典型性,就不细讲了。

    就这样,请多多指教!

  • 相关阅读:
    Redis QPS测试
    go语言下载及安装
    企业级Docker镜像仓库Harbor部署与使用
    Linux格式化数据盘
    【一周一Q】如何快速复制有规律内容
    聊一聊职业能力之执行力
    面试那些事
    使用gitlab时候 fork仓库不会实时从主仓库更新解决方案
    从给定字符串中提取姓名
    测试Websocket建立通信,使用protobuf格式交换数据
  • 原文地址:https://www.cnblogs.com/sysu-blackbear/p/3524552.html
Copyright © 2020-2023  润新知