普通moudle中定义的__all__变量
#如果定义了这个,只有放在这个列表中的东西才能被外界导入使用,
#注意要用字符串形式写变量或者方法的名字
__all__ = ["test1","num"]
num =564612
##=====================================================
这是__init__.py文件下的
这个init文件,也就是这个文件夹下的文件所形成的包,python2必须有这
#个,python3则会认为它本来就是个包
#外部引用这个包的moudle的时候,会查询 这个,如果没有就没法引用
# __all__ = ["MingMoudle"]
#除了all的另外一种导入方式,只能python2用
# import MingMoudle
#除了all的另外一种导入方式,python3用法
from.importMingMoudle
#=====================================================
"""给程序传参"""
importsys
#用这个东西来接收给程序传递的参数,是如下的一个列表形式
# ['GiveProgramParam.py', 'a', 'b', 'cdefg']
# names = sys.argv
#
# print("我是%s的爸爸" % names[1])
# ===================================================================
"""列表推导式,优达学城课好坑,这个都不讲"""
# range(1,5)包左不包右,1到4
# range(10)则表示0到9
# range(0,6,2)则表示0,2,4,第三个参数为步长
#这个函数在python2中如果使用超大的值,会内存溢出
# for i in range(1, 10):
# print(i)
# a = [12, 3, 534, 65, 6, 34, 777, 234, 32]
#使用列表生成式来生成一个列表,就是如下列表
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]
# for循环只负责循环的次数,前面的值则由你自己来控制,比如i*2,就全变双倍
# a = [i for i in range(1, 18)]
# print(a)
# #它后面还可以跟条件控制语句
# # [3, 6, 9, 12, 15, 18]
# c = [i for i in range(1, 20) if i % 3 == 0]
# print(c)
# #循环嵌套,也就是后面的语句其实是在前一个循环内部的
# # [0, 0, 1, 1, 2, 2]
# d = [i for i in range(3) for j in range(2)]
# # [(0, 0), (0, 1), (1, 0), (1, 1), (2, 0), (2, 1)]
# d = [(i, j) for i in range(3) for j in range(2)]
# #三重循环
# d = [(i, j, k) for i in range(3) for j in range(2) for k in range(3)]
# print(d)
# ===================================================================
#元组,列表内容可以重复,集合不行,而且它还是无序的
# c = {11, 22, 33, 11, 33, 22} #集合类型
# {33, 11, 22}
# print(c)
#因此,可以使用集合的特性来进行去重
a = [11,22,33,44,55,11,33,44,55]
#将列表转成集合,自然就去重了
b =set(a)
print(b)
print(type(b))#
d = {"name":"shit"}
print(type(d))#
#将集合再转成列表
c =list(b)
print(c)