第二周总结
本周开启python学习的第二阶段
python文件操作
一.打开文件
r:只读
w:覆盖写
a:继续写
open(name,mode,encoding)
with open(name,mode,encoding) as f://自动关闭
for line in f:
print(f"{line}")
例:f=open("python.txt","r",encoding="UTF-8")
read()方法读取文件中全部数据//加参数表示读取数量
readlines()方法按照行读取数据,以行为元素,返回列表。
readline()方法只读取一行
注意:1.对同一文件多条read读取操作会涉及指针问题2.文件地址书写需要加r或者/全部换成//
二.关闭文件
f.close()
三.对文件写
f. write()
f.flush()//刷新
异常的捕获:
1.基本语法
try:
可能发生错误的代码
except:
如果出现异常执行的代码
2.捕获指定异常
try:
expect 错误类型 as 别名:
3.捕获多种异常
try:
except(,,,,,) as 别名:
4.捕获全部异常
try:
except Exception as 别名:
5.else没有异常
try:
可能发生错误的代码
except:
如果出现异常执行的代码
else:
6.finally//无论如何都要执行的代码
try:
可能发生错误的代码
except:
如果出现异常执行的代码
else:
finally:
模块导入:
import 模块名
from 模块名 import 功能名//只用某个功能
from 模块名 import *
from 模块名 import 功能名 as 别名
自定义模块导入
--main--变量
--all--变量
画图:
json转换语言格式
json转为python使用loads()函数
python转为json使用dumps()函数
图表代码网址 :中文简介 - Document (pyecharts.org)
学会使用网上的json视图查看器分层次(网址:JSON在线视图查看器(Online JSON Viewer) (ab173.com))
set_global_opts方法可以设置全局配置项
折线图:
Line()函数
地图:
Map()函数
add("地图名称",data,"类型")
柱状图:
Bar()函数
reversal_axis()函数:反转xy
label_opts=LabelOpts()设置数值标签
基础时间线柱状图:
Timeline():时间线
add()添加时间线
add_schema函数设置自动播放
动态柱状图:
sort(key=依据函数结果排序的函数,reverse=Ture|False)函数
练习代码:
from pyecharts.charts import Bar,Timeline
f=open(r"C:\Users\l'j'h\Desktop\1960-2019全球GDP数据.csv","r",encoding="ANSI")
a=f.readlines()
f.close()
a.pop(0)
dict1={}
timeline=Timeline()
for i in a:
b=i.split(",")
year=int(b[0])
gdp=b[1]
rate=float(b[2])
try:
dict1[year].append([gdp,rate])
except:
dict1[year]=[]
dict1[year].append([gdp,rate])
dict2=sorted(dict1.keys())
for year in dict2:
dict1[year].sort(key=lambda element:element[1],reverse=True)
dict3=dict1[year][0:8]
x=[]
y=[]
for country in dict3:
x.append(country[0])
y.append(country[1])
bar=Bar()
bar.add_xaxis(x)
bar.add_yaxis("gdp(亿)",y)
bar.reversal_axis()
timeline.add(bar,str(year))
timeline.add_schema(
play_interval=1000,
is_timeline_show=True,
is_auto_play=True,
is_loop_play=False
)
timeline.render("1.html")‘

类和对象学习
魔术方法:
定义--init--方法(定义数据):
def __init__(self,name,age,tel):
self.name=name
self.age=age
self.tel=tel
#使用
student=Student("王文丹",50,”111111111“)
继承
class 类名(父类):
继承函数可以使用pass语句表示无添加内容
调用复写后的父类:
super()或者函数直接调用
注解
仅注解,不影响程序
变量注解:
变量名:int =10
在注释中注解:#type:int
函数注解:
形参注解def add(x:int,y:int)
返回值注解def add(x:int,y:int)->list:
union联合注解:union[类型,类型]
浙公网安备 33010602011771号