python第六节
Posted treasureqiu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python第六节相关的知识,希望对你有一定的参考价值。
- 日志
Import logging
# LOG_FORMAT="%(asctime)s - %(levelname)s - %(message)s"
# logging.basicConfig(filename=‘aaa.txt‘,level=logging.DEBUG,format=LOG_FORMAT)
# def test():
# try:
# a=int(input("请输入一个被除数:"))
# b=int(input("请输入一个除数:"))
# print(a/b)
# return
# except (ValueError):
# logging.debug("只能输入数字!")
# except ZeroDivisionError:
# logging.info("除数不能为0")
# else:
# print("else...")
# finally:
# print("程序结束")
# test()
2.推导
# number=[x for x in range(100) if x % 3 == 0]
#
# def squared(x):
# return x*x
# multiple=[squared(i) for i in range (30) if i % 3 is 0]
# print(multiple)
#
# mcase ={‘a‘:10,‘b‘:34}
# mcase_frequency = {v:k for k,v in mcase.items()}
# print(mcase_frequency)
#例一
# squared={x**2 for x in [1,1,2]}
# print(squared)
#Output:set([1,4])
#用集合推导建字符串长度的集合
# strings=[‘a‘,‘is‘,‘with‘,‘if‘,‘file‘,‘exception‘]
# {len(s) for s in strings}
#
# name=[‘bob‘,‘tom‘,‘alice‘,‘jerry‘,‘wendy‘,‘smith‘]
#
# n=[(x,y) for x in range(5) if x%2==0 for y in range(5) if y%2==1]
# print(n)
m=[[1,2,3],
[4,5,6],
[7,8,9]]
# x=[m[i][i] for i in range (3)]
# print(x)
n=[[2,2,2],[3,3,3],[4,4,4]]
y=[[m[a][b]*n[a][b] for b in range(3) ] for a in range(3)]
print(y)
- 迭代器(Iterable)
两个基本方法:__iter__() __next__()
- 生成器
第一种方式:将列表的[]改为(),里面可以写推导
生成器只要调用next()方法即可得到下一个值
第二种方式:通过斐波那契数列
def feibonaqie():
a=b=1
print(a)
print(b)
for i in range(7):
yield(a+b)
a,b=b,a+b
F=feibonaqie()
print(F)
调用next()方法
以上是关于python第六节的主要内容,如果未能解决你的问题,请参考以下文章