数据来源
代码语言:javascript复制 数据库
文件
#1. excel
#2.普通文本(格式)
#3.csv文本(逗号)
#4. json文本
#5.xml文本
3.网页爬
方法和函数的区别:写在类中的函数叫方法
class类名:
属性:写到构造函数方法中 def init(self,形参)
构造函数写法:def init(self,形参)
注意:构造函数的函数名前后各需要有两个下划线
创建对象时,构造函数自动被调用
继承:子类继承父类的属性和方法
继承之后,在实例化继承类的对象时,依然可构建构造函数,且该构造函数的参数依然需要在实例对象时输入
模块对应的物理层结构是文件,那么包对应的物理层结构就是文件夹。包是通过目录结构组织的模块集合,使用包的方式和模块类似,可通过import导入。注意,当文件夹当作包使用时,文件夹需要包含一个_init_.py文件,这个文件是为了避免将包当作普通的文件夹;但是init.py的内容可以为空
包->模块(文件)->文件中的函数和类
包:一系列模块构成的集合;包内有_init_.py文件的作用有两个:
1.避免把该文件夹当成普通的文件夹
2.批量导入我们需要的模块
模块:即python文件,内部有函数和类
print(name):自己调用,输出__main__;别人调用,输出包名
if name==‘main’: 如果我自己用该模块,那就执行下面的代码,如果别人调用该模块,就不执行下面的代码;这样做的意义是避免将不想被其他模块调用这个包之后还有同样输出,不要干扰其他模块的代码,类似c#里的private命令
from 包 import * #下面在调用函数时,不再需要写包名
数据库连接python:
代码语言:javascript复制 数据库
首先要安装pymysql包。先点击anaconda3里的anaconda.promt;再输入 pip install pymysql就可以了
#1. 创建数据库库
#2. 创建表
#3. 插入数据
python连接mysql语句
import pymysql
conn=pymysql.connect(‘localhost’,‘root’,‘root’,‘school’)
print(conn)
#2.操作
#定义一个执行者
cur=conn.cursor()
cur.execute('select id, name, sex, age from student ')
#获取内容
lst=cur.fetchall()
print(lst) #结果是个元组,元组的每一条还是一个元组,对应这数据库的一条记录
for e in lst:
print(e[0],e[1],e[2],e[3])
#关闭cursor和连接
cur.close() #先关闭执行者
conn.close() #再断开连接
#2.增删改
cur=conn.cursor()
#执行语句
cur.execute(“insert into student values(null,‘wang5’,‘f’,‘19’)”)
conn.commit() #不能省,必须要加commit来提交到mysql中去确认执行
#关闭cursor和连接
cur.close()
conn.close()
在python中输入路径时,要么用‘’两个斜杠来进入子目录,要么使用‘/’反斜杠来进入子目录
ex:
D:file.txt 或者 D:/file.txt
ANSI:GBK(国标码)一个汉字是两个字节
UNICODE:一个汉字是两个字节,老外设计,前面多出两个字节是注释它是unicode码
UTF-8:一个中文是三个字节;老外设计,前面多出3个字节是注释它是UTF-8码
文件
#打开文件
f=open(‘E:CDA培训python1.txt’,‘w’) #w写入,a追加,r只读;写入的文件可以是不存在的
#写入
f.write(‘hello world’)
#关闭文件
f.close()
代码语言:javascript复制#练习定位读入
f=open(‘E:CDA培训python1.txt’,‘r’)
f.seek(7) #让光标定位到7
result=f.read(2) #读入两个字符
#读入的3个方法, read(n)读n个,readline()读1行,readlines():读全部行;list(open(文件)):读取全部行
f=open(‘E:CDA培训python2.txt’,‘r’)
f.readline()#读取的结果是字符串,‘当上总经理n’
f.readline() #出任ceon
f=open(‘E:CDA培训python2.txt’,‘r’)
f.readlines() #读取到的结果是个list
f=open(‘E:CDA培训python2.txt’,‘r’)
list(f)
#追加内容文件
f=open(‘E:CDA培训python1.txt’,‘a’) #append追加
f.write(‘中国人’)
f.close()
print(result)
f.close()
#和open(),close()功能一样,不需要再输入关闭,因为with…as…的结果会自动关闭资源,类似sql里WITH CTE()创建临时表的功能
with open(“E:CDA培训python1.txt”) as f:
#执行操作
pass
常用库:OS库和time库 import os os.getcwd() #get current work dir,返回当前工作目录
os.mkdir(‘E:CDA培训python123’) #创建一个文件夹
os.rmdir(‘E:CDA培训python123’) #删除一个文件夹