Sixteen 包_导入_random

 

1、包

  1、创建一个以包命名的名称空间

  2、执行包中的__init__文件,将__init__里面的代码块加载到以包命名的名称空间中

  3、调用包内的名字必须通过包名. 的方式调用

# 调用文件夹a里面的文件夹b里面的模块m
#第一步 在此文件 import a
#第二步 在a 的__init__ 添加from a import b
#第三步 在b 的__init__ 添加from a.b import m
#完成以上三步,那么执行文件就可以引用b文件夹的m模块里面的函数func1
a.b.m.func1()

  总结:

    from a.b import c .的左边一定是个包,import后面一定是一个具体的名字

    包里面的__init__如果想要引用模块必须是from...import... 不能直接import

    from a.b.c.d import e.f.g 错误,import后面不能再.

    from a.b.c.d import e 正确

2、绝对导入和相对导入

  绝对导入:以执行文件的sys.path为起始点开始导入,称之为绝对导入

    优点: 执行文件与被导入的模块中都可以使用

    缺点: 所有导入都是以sys.path为起始点,导入麻烦

  相对导入: 参照当前所在文件的文件夹为起始开始查找,称之为相对导入

    符号: .代表当前所在文件的文件夹,..代表上一级文件夹,...代表上一级的上一级文件夹

    优点: 导入更加简单

    缺点: 只能在导入包中的模块时才能使用

3、random

print(random.random())  #  大于0且小于1之间的小数
print(random.uniform(1,3))  # #大于1小于3的小数
print(random.randint(1,5))  # 大于等于1且小于等于5之间的整数
print(random.randrange(1,10,2))  # 10以内的奇数
print(random.choice(['aa','bb',''])) # 多选一
print(random.sample(['aa','bb','',''],2)) # 多选多

chr()判断数字对应的ASCII码

posted @ 2019-01-10 22:17  pythonernoob  阅读(165)  评论(0)    收藏  举报