第二十二天
1.主题:菜鸟教程—python100例
http://www.runoob.com/python/python-100-examples.html
2.摘要
A.列表解析与过滤==相对于if语句,不以if则是影射
>>> li = ["a", "mpilgrim", "foo", "b", "c", "b", "d", "d"]
>>> [elem for elem in li if len(elem) > 1]
['mpilgrim', 'foo']
B.列表拷贝大总结—8种方法:
>>> l #原始数组l
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> m = l #法1:直接相等法
>>> m
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> n = l.copy() #法2 :浅拷贝法
>>> n
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> p = [x for x in l] #法3 :映射法
>>> p
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> q = l[:] #法4 :切片法
>>> q
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> r = l * 1 #法6 :相乘法
>>> r
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> s = [] #法7 :列表扩展法
>>> s.extend(l)
>>> s
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
>>> t = [] #法8 :空列表 尾部追加法
>>> for x in l:
... t.append(x)
>>> t
[2, 3, 5, 6, 7, 8, 9, 4, 5, 6, 7, 8, 101]
...
C.发现一个正则表达式的完美例子
#统计输入字符串的数字、字母、空格等的个数,以回车键结束输入。
import re
s = input('输入一串字符:')
char = re.findall(r'[a-zA-Z]',s) #正则表达式的范本
num = re.findall(r'[0-9]',s)
blank = re.findall(r' ',s)
chi = re.findall(r'[\u4E00-\u9FFF]',s)
other = len(s)-len(char)-len(num)-len(blank)-len(chi)
print("字母:", len(char),"\n数字:", len(num),"\n空格:",len(blank),"\n中文:",len(chi),"\n其他:",other)
3.心得感悟
A.因为这100例都是python2.7版的,所以必须全部改成python3.6版本,所以工作量很大,正好做个期末测试。其中45题之后就 没有太大价值,主要是画图函数等;
B.本打算用廖雪峰博客python做测试,但好多网络开发未学习,也不属于当初定下的入门级目标,留作后期做体提升课程吧。
4.时间统计
昨日阅读5小时,累计215小时