python小白学习总结day04

果然说一会儿写总结都是骗人的T T~~昨晚有事出门回来也没接着上篇写总结,今天补上。
今天写了字典,CSV文件,异常处理,try语句,生成随机数,海龟图。

#注意,使用outfile创建文件时,文件名要加引号,不然会有错误。
#outfile,infile没有clear方法,只有outfile有一个导包os然后remove方法可以删文件,不要混淆。

在分析字典的应用之前,首先补上“CSV文件”部分。

1、CSV格式文件,每一行包含了若干条数据项,每一项数据之间用,隔开。
文件的每一行称为一条记录,每一条记录包含若干个域。

2、访问CSV文件中的数据
使用split方法获取一个CSVV文件中的域,
例如该文件第一行为 haha,1,hehe,w
若data= line.split(",") 那么data[0]的值是haha,data[3]的值为w。

3、使用列表分析CSV文件中的数据
可以将一个CSV文件中的数据存到一个列表中,然后分析它。这个列表中的每一项也是一个列表,包含了文件一行的内容。

4、CSV文件的具体操作
读入:
import csv #首先导包
csvFile = csv.reader( open( “fileName.csv”,‘r’) )
写:
outfile = open(“fileName.csv” , ‘a’ ,readline="") #readline为可选参数
csvWrite = csv.writer(outfile , dialect = “excel”)
csvWrite.writerow(" ********* ")

##以上是CSV文件的基本操作,下面讲字典的应用的总结。

1、在二进制文件中存储字典
##可以将文件存为二进制格式,需要导包.
import pickle
outfile = open(“fileName”,‘wb’) #wb表示作为二进制文件为了写入而打开
pickle.dump(dictionaryName , outfile)
outfile.close()

读取:
infile = open(“fileName”,‘rb’) #rb表示为了读入而打开二进制文件
dictionaryName = pickle.load(infile)
infile.close()

#使用“dat”扩展名作为存储字典的二进制文件
2、值为字典的字典
#字典可以包含字典。例如
nations ={“Canada” : {“cont”:“North America”, “popl”:34.8 } }
nations[“Canada”]的值为字典{“cont”:“North America”, “popl”:34.8 }
nations[“Canada”][“cont”]的值为North America

3、从字典中获取顺序数据
##字典是无序结构,没有sort方法,不过可以将字典中的元素按照自定义的顺序存入一个“由两个元素的元组”组成的列表中:
sorted(dict1.items() , key=f , reverse = BooleanValue)

#因为字典的键不可修改,所以列表和集合不可以作为键。

异常处理部分:
1、异常类型
AttributeError #向对象发起不可用的功能请求
FileNotFoundError #请求的文件不存在或不在指定位置
ImportError #导包异常
IndexError
KeyError
NameError #变量名异常
TypeError
ValueError
ZeroDivisionError #除法或取余中分母为0

2、try语句
try:
(#####)code
except:
(#####)code
#先执行try语句,如果产生了异常,则执行except部分的语句。
#except有三种类型:
1、except #发生任何异常都会执行
2、except ExceptionType #只有发生特定类型异常才会执行
3、except ExceptionType as exp #同2,同时把异常信息赋值给exp变量
#在类型3中,若异常类型包含多种,要用一个元组包起来。例如:
except(ValueError,TypeError) as exp:

3、else与finally子句 #可要可不要
可以在try语句中的 except 子句后加一个else语句,当没错误发生时将执行else子句;
一个try语句可以以一个finally子句结束,finally子句中的语句用来清理资源,如未被关闭的文件等。

随机数
需要导包 import random
1、若L是个列表,
random.choice(L) 将从L中随机选择一个元素
2、random.sample(L , n)#创建一个列表,其中包含从L中随机选取的n个元素
3、random.shuffle(L) #重排L中的元素
4、random.randint( m , n) #若m,n为整数且m<=n ,将会从m~n中随机选取一个整数。

海龟图
主要用来进行作图。
需要明确几个状态:位置,朝向,笔的状态,颜色
import turtle #需要导包
t = turtle.Turtle() #小海龟,笔
t.up() t.down() #抬笔或放笔
t.hideturtle() #隐藏画笔形状(小海龟)
t.forward( dist) #按照他的朝向移动dist个像素
t.goto(x , y) #将小海龟移动到坐标x,y
t.pencolor (colorName) #改变笔的颜色
t.setheading( deg) #将海龟改成面朝deg度的方向
t.left( deg) t.right(deg) #将小海龟顺时针或逆时针旋转deg度
t.dot(diameter , colorName) #在给定的直径和颜色在当前位置画点,默认直径为5
t.fillcolor(colorName) #用颜色填充
t.begin_fill() 绘图区域 t.end_fill() #用在fillcolor之后

t.write(s,align=“right”) #以当前位置作为右下角来显示出字符串s,align默认为左下角,可选参数right,center,left。
#另有一个参数font可以调字体,font参数由元组(fontName,fontSize,styleName)组成。

猜你喜欢

转载自blog.csdn.net/weixin_43782979/article/details/86518199
今日推荐