with打开文件的用法,打开运行完后,不管有没有错,都会自动关闭
with open("a.txt","r") as f:
x=f.read()
print(x)
with open("a.txt","w") as f:
f.write("456")
raise的作用:跑出异常,属于没有错误,自己主动抛出错误,并且下面的代码不会在执行
a=10
raise IndexError("错了")
print("哈哈哈") #这句话不会在执行
try:
a=10
print(a)
raise IndexError("错误")
except IndexError as e:
print("到这里了",e)
"""
10
到这里了 错误
"""
自定义异常
class MyError(Exception):
def __init__(self,msg):
self.msg=msg
def __str__(self):
return self.msg+"---超级异常侠"
try:
raise MyError("我其实没错")
except MyError as e:
print("异常了",e)
异常了 我其实没错---超级异常侠
class Student():
def __init__(self,name,sex,age,score):
self.name=name
self.sex =sex
self.age =age
self.score=score
wangfei=Student("王非","女",18,66) #由类制作
print(dir(wangfei)) #可以找出wangfei的内置函数,和属性
print(wangfei.name,wangfei.sex,wangfei.age,wangfei.score)
class Stu():
address="光明顶"
def __init__(self,name):
self.name=name
zs=Stu("张无忌")
print(zs.name)
print(zs.address)
print(Stu.address)
delattr(zs,"name")
print(zs.name)
#单个用A不能用,但是搭配B之后可以使用
class A():
def hehe(self):
print(self.name)
class B(A):
def __init__(self,name):
self.name=name
zs=B("张三")
zs.hehe()
#单个用A不能用,但是搭配B之后可以使用
class A():
def hehe(self):
print(self.name)
class B(A):
def __init__(self,name):
self.name=name
zs=B("张三")
zs.hehe()
#函数方法可以在外部扩展,如下
class A():
def __init__(self,name):
self.name=name
def haha():
print("哈哈")
a=A("张三")
a.haha1=haha
a.haha1()
"""
哈哈
"""
#类方法
class A():
money=1000
def __init__(self,name):
self.name=name
@classmethod
def hh(cls):
print(cls.money)
A.hh()
b=A("张三")
b.hh()
单例模式,可以用在数据库,这样只建立一条管道即可
class A():
def __new__(cls, *args, **kwargs):
if not hasattr(A,"xiaogou"):
cls.xiaogou=object.__new__(cls)
return cls.xiaogou
def __init__(self,name):
self.name=name
a=A("哈哈")
b=A("呵呵")
c=A("嘿嘿")
print(a.name)
print(b.name)
print(c.name)
"""
以上三个结果都为嘿嘿,最后一次值的名字
"""
#getcwd
a/b/c/d
创建级联目录
a="a\\b\\c\\d"
import os
b=a.split("\\")
print(b)
p=os.getcwd()
for dg in b:
p=p+"\\"+dg
if not os.path.exists(p):
os.mkdir(p)
a="a\\b\\c\\d"
import os
b=a.split("\\")
print(b)
p=os.getcwd()
for dg in b:
p=os.path.join(p,dg)
if not os.path.exists(p):
os.mkdir(p)