Python里面的文件操作和类

36:深浅拷贝
import copy
c=copy.copy(a) //a和c的地址不一样,内容一样
n=m //m和n的地址空间一样,内容一样,

d=copy.deepcopy(a) //深拷贝,子空间也拷贝出来一份

37:文件的操作
r只读
r+读写
w先删,没有就创建, 再写
w+ 先删,没有就创建,再读写
a :写入,再文件末尾追加新的内容,文件不存在就创建
a+ :读写,再文件末尾追加新的内容,文件不存在就创建
b :打开2进制文件,可以与rwa+结合使用
U: 支持所有的换行符
open(”“,w)

38:文件对象方法
String FileObject.read([size])
list=FileObject.readlines([size])
String =FileObject.readline([size])
FileOnject.next()
FileObject.flush()
FileObject.writelines(list) 多行写
FileObject.seek(0,0) //指针回到开头

39:文件查找

40:OS模块
创建目录
import os
os.mkdir(“/root”)
os.makedirs(“a/b/c”)
os.rmdir(“root”)
os.removedirs(“a/b/c”)
os.listdir(“.”) //返回目录文件,不包含子目录
os.getcwd() //当前路径
os.chdir(“/”) 切换python的路径
os.walk(“/root/csvt”) //返回的是生成器。生成器需要遍历
g = os.walk(“”)

#

获取绝对路径

for path ,d,filelist os.walk(“”):
for filename in filelist:
os.path.join(path,filename)

41:异常
try:
f=XXXXXX
except IOError,e:
print False , str(e)
finally :
f.close() //一定执行

#

异常种类
NameError ,msg:

raise TypeError(“”)类型

42:mysql
import MySQLdb
conn=MySQLdb.connect(user=”,passwd=”,host=”)
cur=conn.cursor()
cur.execute(“insert into userinfo (name ,age,gender) value (‘df’,’ss’,’ss’)”)

sql=”insert into tables (name ,age) value (%s,%s)”
cur.execute(sql,(‘ss’,’ff’)) //传的参数是元组
cur.executemany(sql,[(”,”),(”,”),(”,”)]) //插入多组值

查询
cur.execute(select * biao);//返回条数
cur.fetchone() //取一条,指针向下走
cur.scroll(0,’absolute’) //

cur.fetchmeny(15) //取得条数
cur.close() //游标关闭
conn.close() //连接关闭

43:类
创建类:
class Test:
… first = 123
… def f(self):
… return “”

类种的方法,必须至少有一个参数

实例化
test = Test()
test.f()
test.first

#

变量定义:
__代表私有,默认都是公有
访问私有:
p = Person()
p.__Person__age

继承
class Test(BaseClassName):
pass
子类的构造方法调用父类的构造方法
super.init()

多重继承
p = Person(BaseClass1,BaseClass2)
l属性不用声明,可以直接使用。属性是静态变量
2属性的名字和方法的名字相同,属性会覆盖方法
3利用组合继承定义类是应该的。
查看属性
对象.dict //返回的是字典类型
Person.function() //可以直接调用

#

绑定:

获取属性值
getattr(c1,’name’)
setattr(object ,name ,vlaue) //给属性赋值,没有属性就新建赋值
delattr(object,name)//删除属性,没有抛异常
hasattr(object ,”)//判断是否有属性
x=property(getSize,setSize,delSize)

最先初始化的方法不是init,是new
class CapStr(str):
def new(cls ,strings):
strings = strings.upper()
return str.new(cls,strings) //这个return 会把参数会传给self。他的返回值类型是一个必须是一个对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值