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

语法:

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

  1. python课程第二周重点记录

    python课程第二周重点记录 1.元组的元素不可被修改,元组的元素的元素可以被修改(字典在元组中,字典的值可以被修改) 2.个人感觉方便做加密解密 3.一些方法的使用 sb = "name ...

  2. python课程第一周重点记录

  3. 孤荷凌寒自学python第五十二天初次尝试使用python读取Firebase数据库中记录

    孤荷凌寒自学python第五十二天初次尝试使用python读取Firebase数据库中记录 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数 ...

  4. 2003031121-浦娟-python数据分析第四周作业-第二次作业

    项目 内容 课程班级博客链接 20级数据班(本) 作业链接 Python第四周作业第二次作业 博客名称 2003031121-浦娟-python数据分析第四周作业-matolotlib的应用 要求 每 ...

  5. python学习第三次记录

    python学习第三次记录 python中常用的数据类型: 整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set). int.数 ...

  6. 20135302魏静静——linux课程第四周实验及总结

    linux课程第四周实验及总结 一.实验 我选择的是第20号系统调用,getpid 代码如下: /* getpid.c */ #include <unistd.h> #include &l ...

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

    目录 1.快乐的数字 2.凯撒密码I 3.凯撒密码II 4.括号配对检测 A @     下面向大家介绍一下我在学习python课程的一些题目的解法,如果大家有什么更好的解法请私信我.这里只显示题目与 ...

  8. 尚学python课程---15、python进阶语法

    尚学python课程---15.python进阶语法 一.总结 一句话总结: python使用东西要引入库,比如 json 1.python如何创建类? class ClassName: :以冒号结尾 ...

  9. 尚学python课程---14、python中级语法

    尚学python课程---14.python中级语法 一.总结 一句话总结: var[1:5] 访问模式:比如字符串,比如列表元祖,字典等 del 删除模式:比如列表.元祖.字典 1.Python的N ...

随机推荐

  1. python 去掉列表(list)中的所有空元素

    while '' in listExample: listExample.remove('')

  2. High CPU Usage 原因及分析

    常见的高CPU利用率出现几个原因: Missing Index 统计信息过时 非SARG查询 Implicit Conversions Parameter Sniffing Non-parameter ...

  3. php工作笔记7-概率算法

    a/m  b/m   c/m   d/m   10%    40%    20% a+b+c+d+... < = m array k   =  {a,b,c...} randt = rand(1 ...

  4. jq实现全选、全不选、反选

    基本思路: 1全选:点击全选按钮的时候,将input的属性checked设置为true; 2全不选:点击全不选按钮的时候,将input的属性checked设置为false; 3反选:点击反选按钮的时候 ...

  5. 新版本eclipse Neon 4.6.1,登录git报401 没有权限

    新版本eclipse Neon 4.6.1,登录git报401 没有权限 经过查找原因竟然是新的eclipse需要进行update.比较坑,新版eclipse竟然需要先更新一下才能用! eclipse ...

  6. EM算法(1):K-means 算法

    目录 EM算法(1):K-means 算法 EM算法(2):GMM训练算法 EM算法(3):EM算法运用 EM算法(4):EM算法证明 EM算法(1) : K-means算法 1. 简介 K-mean ...

  7. Python:常见操作字符串的函数

    Python中提供了很多操作字符串的函数: string = "hello, my dear python!" string.capitalize() #将字符串中的第一个字母大写 ...

  8. asp.net GDI+ 绘制椭圆 ,弧线,扇形

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. CentOS 7 安装 MySQL

    转自:http://www.centoscn.com/mysql/2016/0315/6844.html 环境 CentOS 7.1 (64-bit system) MySQL 5.6.24 Cent ...

  10. jQuery(window) 和 jQuery(document)的区别

    jQuery(window).height()代表了当前可见区域的大小,而jQuery(document).height()则代表了整个文档的高度,可视具体情况使用