知识点:
1,在栈中,栈顶指针top动态反映了栈中元素的变化情况,在循环队列中,队尾指针和队头指针的动态变化决定队列的长度,在链式存储结构中.无论是循环链表还是线性链表,插入和删除元素时,只需要改变相应位置的结点指针即可,头指针和尾指针无法确定链表的长度
2,模块实现的算法设计是软件详细设计阶段任务
3,ndim:数组的维度; shape:数组的形状; size: 数组的元素个数; itemsize: 数组的每个元素占用的内存大小,以字节为单位
4,pop()将列表中第项元素删除并返回该元素,默认删除列表最后的元素; sorted()对列表元素进行排序,默认从低到高排序,若列表存储元素为字符串,则比较每个元素的长度,排好顺序之后取出下标为0的元素。
5,min()获得列表最小的元素, index()返回给定元素的下标,若元素不存在则报错.
6,Python有35个关键字,分别是: and, as,assert,async await, break,class,continue,def, del, elif,else, except,False,finally,for,from,global,if,import,in,is,lambda,None,nonlocal,not,or,pass,raise,return,True, try,while,with,yield。
7,numpy是数据分析方向的第三方库,wordcloud用于根据文本生成词云的第三方库, wxPython是Python一套优秀的GU图形库。
8,CSV文件的格式是每个元素之间以逗号进行分隔,所以需要用到join()方法; split()是在读取CSV文件时用到的方法; strip()方法是去除字符串左右两侧指定的字符; exists()是判断文件路径是否存在的方法。
操作题:
1,读取文件中的内容,去除空行和注释行,以行为单位进行排序,并将结果输出到屏幕上。
代码:
f = open(" poem.txt","r")
result= []
for line in f.readlines():line = line.strip()if len(line) != 0 and line[0]!= "#": result.append(line)
result.sort()
for line in result:print(line)
f.close()
2,在屏幕上输出杨辉三角行
代码:
a= []
for i in range(8):a.append([])for j in range(8):a[il.append(0)
for i in range(8):a[i][0]= 1a[i][i]= 1
for i in range(2,8):for j in range(1,i):a[i][j]= a[i-1][j-1]+ a[i-1][j]
for i in range(8):for j in range(i+1):print("{:3d}".format(a[i][j]),end="")print()
3,统计一个英文单词的集合中包含全部是小写字母的单词总数
代码:
strings = {'cad', 'PE ', 'Window', 'FM', 'hello', 'world','flowers'}
n= 0
for word in strings:if word.islower(): n+=1
print(n)