python 列表的推导器和内置函数

#++ ===================================         =  列表的推导式

# li = []
# for i in range(1,11):
# li.append(i)
# print(li)
#
# lis = [i for i in range(1,11)] #列表的推导式
# print(lis)

#[变量(加工后的变量) for 变量 i in 可迭代的数据类型】 列表的推导式


# li2 = []
# for i in range(1,10):
# li2.append("python%s期"%i)
# print(li2)
# l = [1,2,3,"python"]
# li3 = [i for i in l] # 循环的要是可迭代的对象
# print(li3)
#
# lis4 = ["pytho%s期"%i for i in range(1,11)]
# print(lis4)
#
# lis5 = ("python%s期"%i for i in range(1,11))
# print(lis5)
# for i in lis5:
# print(i)
# 列表推导式 , 生成器表达式
# 1 ,列表推导式比较直观,占内存
# 2 ,生成器表达式不容易看出内容,省内存

#【变量(加工后的数据) for 变量i in 可迭代的数据类型】 列表的推导式,循环模式
#【变量(加工后的数据) for 变量i in可迭代的数据类型 if 条件】 列表的推导式, 筛选模式

#例子 1 , 30以内所有能被3整除额数
# list = [i for i in range (31) if i%3 == 0]
# print(list)
# #例子 2 , 30 以内所有能 被 3 整除数的平方
# list2 = [i**2 for i in range(31) if i % 3 == 0]
# print(list2)
#
# names = [["tom","bile","ana"],["tetrdfrre","eeee","bra"]]
# name_list = [name for i in names for name in i if name.count("e") == 2]
# print(name_list)


#字典的推导式
# 列子 1 将一个字典的 key 和 value 对调
# mcase = {"a":10,"b":34}
# mcase_fre = {mcase[k]: k for k in mcase}
# print(mcase_fre)

# 集合的 推导式 , 计算列表中每个值的平方,自带去重功能
# squared = {x**2 for x in [1,-1,2]}
# print(squared)

#================================================= 内置函数 与 功能
'''
range()
input()
len()
print()
dir()
max()
int()
min()
sum()
str()
list()
tuple()
id()
'''
# print()
# print("666",end="\n")
# print("666")
# print(1,2,3,4,5,sep = "|")
# f = open("file","w",encoding="utf-8")
# print(666,file = f)
# f.close()

#dir 查找对象的所有方法
#print(dir([]))


#locals() 将局部的变量储存起来
#globals() 将全局的变量,函数名。等等存储起来
# def func():
# name = "alex"
# print(locals())
# print(globals())
# func()

#help(str) 将你查询的对象所有信息都拿出来


#abs() 取绝对值
# print(abs(-1))
# print(abs(1))
# def func(ret):
# print(44)
#最大值
# ret = max(1,2,-3,key=abs)
# print(ret)
#最小值
#ret = min([1,2,3])
#print(ret)
#sum iterable,初始值 会把总和求出来
# ret2 = sum ([1,2,3],10)
# print(ret2)

#callable 判断此变量是不是函数名
# name = "alex"
# print(callable(name))
# def func():
# print(666)
# print(callable(func))

#hash() 通过哈希表的规则,将对象转换成哈希值
# print(hash("eerhugndfnfgndo"))
# print(hash("eerhugndfndo"))
# print(hash("eerhugndfnfgndo"))
# print(hash("eerhugndfnfdo"))
# print(hash("eerndfnfgndo"))
# print(hash("eerhugndfnfg"))
# print(hash(("a","b")))
# print(hash(True))

#all 可迭代对象里面的所有值转化成bool值 如果都是True 则,返回True ,如果 不是 返回 False
# print(all([1,2,3,0]))

#十进制转化成二进制
# print(bin(100))
# 将十进制 转化成 八进制
# print(oct(9))
#将十进制转化为十六进制
# print(hex(33))

#数据类型str()
# float :有限小数,无限循环小数,不包含(无限不循环小数)
# print(1.35432,type(1.35432))
# print(float(3))

#complex()
'''
实数: 有理数,,无理数
虚数:j2
复数:1+ 2j
'''

#divmod() 分页
# print(divmod(9,5)) # 商 余数

#enumerate(iterable,start ) #枚举 也可用于字典
# li = ["手机","电话"]
# for i,j in enumerate(li):
# print(i,j)

#eval 有返回值 除去字符串两边的引号,返回里面的内容
#exec 没有返回值 除去字符串两边的引号,执行里面的代码
#流程语句
# s = "{'name':11,}"
# s1 = "1+2+3+4"
# print(eval(s),type(eval(s)))
# print(exec(s),type(exec(s)))
# print(eval(s1)) 数字类型总和求出来
# code = '''for i in range(10):
# print(i)'''
# print(exec(code))
posted @ 2018-02-07 22:24  xuerh  阅读(251)  评论(0编辑  收藏  举报