python课程第四周重点记录

1.迭代器

names = iter(["alex","jack","rain"])   #声明列表的一个迭代器
names.__next__() #迭代

2.生成器,使用yield后,函数变成一个generator,调用函数返回一个iterable对象

def cash_monkey(amount):
    while(amount>0):
        amount -= 100
        print("取钱啦")
        yield amount

atm = cash_monkey(500)
print("还剩%s"%atm.__next__())#__next__()方法相当于执行一次函数,停在yield语句处返回yield相当于return
print("还剩%s"%atm.__next__())
for i in cash_monkey(500): #for循环中自动调用__next__()方法
    print(i)
#在读取文件中使用
def read_file(fpath):
   BLOCK_SIZE =1024
   with open(fpath, ‘rb‘) as f:
       while True:
           block =f.read(BLOCK_SIZE)
           if block:
               yield block
           else:
               return

def h():
    print(‘Wen Chuan‘)
    m = yield 5 # 接收了send传过来的Fighting!
    print(m)
    d = yield 12
    print(‘We are together!‘)
c = h()
m = c.__next__() #m 获取了yield 5 的参数值 5
d = c.send(‘Fighting!‘) #d 获取了yield 12 的参数值12
print(‘We will never forget the date‘, m, ‘.‘, d)

3.二维数组

‘‘‘
[0,1,2,3]
[0,1,2,3]
[0,1,2,3]
[0,1,2,3]
----------
[0,0,0,0]
[1,1,1,1]
[2,2,2,2]
[3,3,3,3]
‘‘‘
data = [[col for col in range(4)] for row in range(4)]
for i in range(len(data)):
    a = [data[i][i] for row in range(4)]
    print(a)

4.正则表达式

import re
match = re.match(r‘dog‘, ‘dog cat dog‘)   #匹配开始
match.group() #取得匹配上的元素
match = re.search(‘dog‘, ‘dog cat dog‘)  #匹配任意位置,只匹配一次
match.group()
match.start()  #匹配上的元素的开始位置
match.end()    #匹配上的元素的结束位置
match = re.findall(r‘dog‘, ‘dog cat dog‘) #所有匹配对象,得到的是一个列表
contactInfo = ‘Doe, John: 555-1212‘
match = re.search(r‘(\w+), (\w+): (\S+)‘, contactInfo) #分成3个子串
match.group(1) #Doe
match.group(2) #John
match.group(3) #555-1212
match.group(0) #匹配所有Doe, John: 555-1212

语法:

时间: 2024-10-10 10:02:05

python课程第四周重点记录的相关文章

python课程第一周重点记录

网页制作重点记录

最近一直在学习PHP开发,总想着随手把重点记录下来,有时候总是忘记记. 我的免费空间的域名cysky.kuphp.net   在第一版的个人网站(只是几个小网页) 使用了iframe嵌套网页功能,这个使用在相册和留言板方面还是有用的. 使用方法如下: 一.页面内加入 <iframe height="330" src="URL" frameborder="0" width="420"></iframe>

Python hashlib模块 (主要记录md5加密)

python提供了一个进行hash加密的模块:hashlib 下面主要记录下其中的md5加密方式(sha1加密一样把MD5换成sha1) [python] view plaincopyprint? >>> import hashlib >>> m = hashlib.md5() >>> m.update("Nobody inspects") >>> m.update(" the spammish repe

virtualenv python多版本管理安装配置记录

virtualenv主要是用来管理Python的不同版本,记录windown下的安装过程. 1.安装python2.7,设置好path环境变量:\python2.7:\python2.7\Scripts 2.安装setuotools,主要是run:ez_setup.py 进行自动安装 3.下载 virtualenv 建议使用10版本 easy_install virtualenv==1.10.1 4.CD都任意目录下:virtualenv 虚拟名字,如:virtualenv EVN 如果报错,报

对Python课程的期望

之前对Python没有过多的了解,只是简单的知道有这么一种计算机语言.作为一个计算机小白,感觉计算机语言好神秘,对Python也有一定的恐惧感.Python是不是很难学?Python能解决什么实际问题?Python的适用面广不广?等等一系列问题也让我对Python充满了好奇.当真正开始学的时候,感觉Python还是很有意思的,可以用简单的方法解决很多实际问题.而且,老师讲课也不是简单的阐述理论,而是以十分有趣的方式带领我们走进Python的世界.瞬间感觉,哇,Python还挺好玩的.在以后的Py

python课程单元三编程题讲解(上)

目录 1.快乐的数字 2.凯撒密码I 3.凯撒密码II 4.括号配对检测 A @ ? ??下面向大家介绍一下我在学习python课程的一些题目的解法,如果大家有什么更好的解法请私信我.这里只显示题目与代码. 1.快乐的数字 ???描述:编写一个算法来确定一个数字是否"快乐". 快乐的数字按照如下方式确定:从一个正整数开始,用其每位数的平方之和取代该数,并重复这个过程,直到最后数字要么收敛等于1且一直等于1,要么将无休止地循环下去且最终不会收敛等于1.能够最终收敛等于1的数就是快乐的数字

关于在学习python爬虫时的学习记录

最近学习python3爬虫,看的是这位博主的博客,不得不说,是真的厉害,通俗易懂^?_?^ 我要学习的还有很多-从基本的python知识,我就被难倒了- 哎,记录下我的盲点- 花了近一个钟头测试出来的结果. 在爬取相关的html时,text ≠ text[0] 后者是正确的.我一直以为不加的效果也是一样的结果,在我理解看来就是从头开始的,即从0到尾的所有相关的内容,实际上我的理解与相关的python基础不谋而和,可能是爬虫就需要如此的?我就默认好了- 在python中的方法后面的()是不可省去的

为什么Python课程这么抢手?值得学习吗?

说起编程行业,大家应该都非常熟悉Python吧,Python是一门入门简单.容易上手的编程语言,而且涉及领域广泛,可就业岗位多,发展也是非常不错的,那么Python课程为什么这么抢手?带你了解一下它的优势. 通过目前招聘信息网站上了解到的情况,现在不少企业给出Python开发工程师25k的高薪,其中还有很多知名大型的企业,可以看得出来Python工程师是非常抢手的,自然与Python的优势具有很大的关系. 为什么Python课程这么抢手? 1.虽然Python是近几年在国内发展起来,但是Pyth

Python 应用领域及学习重点

笔者认为不管学习什么编程语言,首先要知道:学完之后在未来能做些什么? 本文将浅谈 Python 的应用领域及其在对应领域的学习重点.也仅是介绍了 Python 应用领域的"冰山一角",有兴趣的读者可以再自行搜索资料进行了解. Python 的应用领域是极其广泛的,几乎所有大中型互联网企业都在使用 Python 完成各种各样的任务.想详细了解,请参见下文,如有不妥之处,敬请留言指正,笔者必会虚心采纳. 一 Python 在世界上的知名应用 以下内容,将列举出 Python 在大家所熟知的