#输入两个数 输出之间质数 ,和 尾数为3.
data=int(input('请输入第一个数:'))
data1=int(input('请输入第二个数:'))
h=0
gs=0
for i in range(data,data1):
j=2
while j<i:
if i%j==0:
break
j+=1
else:
print(i,end=' ')
h+=i
if i%10==3:
gs+=1
print(h, gs)
#异常
a=[12,13]
try:#测试 尝试
print(a[3])
except IndexError as e:#下标越界 e 定义一个变量接受 值
print('出现错误了',e)
print('程序出现错误')
#异常
class a():
pass
try:
print(a.x)
except AttributeError as x:#未知属性
print(x)
#异常
a={'q':1,'w':2}
try:
print(a['e'])
except KeyError as m:#找不到关键字
print(m)
#异常
a=[1,2,3,4,5]
b=iter(a)#迭代器
try:
while True:
print(next(b))#超出限制
except StopIteration as t:
print(t)
#while True:
try:
print(next(b))
except StopIteration as t:
print(t)
break
#有异常会直接捕捉,下面不运行,所以只报第一个异常
a=[1,2,]
try:
print(a[3])#索引异常
print(1/0)#除0异常
except (ZeroDivisionError,IndexError) as q:#可以接收除0异常与索引异常
print(q)
#无异常
a=[1,2,]
try:
print(1111)
except (ZeroDivisionError,IndexError) as q:
print(q)
else:
print('我没错')
#except:可以捕捉所有异常,但同时只能捕捉一个异常
a=[1,2,]
try:
print(a[3])
print(2/0)
print(1111)
except :#可以捕捉所有异常,但同时只能捕捉一个异常
print(2)
else:
print('我没错')
#try…finally…如果一个代码必须要执行,无论对错,就用finally。
a=[1,2,]
try:
#print(a[3])
print(1111)
except :
print(2)
else:
print('我没错')
finally:#无论是否出错,都运行
print('都运行')
#finally
try:
f=open('c.txt','r')#文件必须存在
f.write('122')
except:
print('错了')
else:
print('没错')
finally:
print('无论是否出事,都走这步')
f.close()#打开一个文件 无论对错 都必须关闭文件,所以用finall
#文件的读取
with open('a.txt','r') as f:#程序运行文会自动关闭文件
e=f.read()
print(e)
#主动抛出一个异常
a=10
raise IndexError('错了')
print('123')
#捕捉rasie异常
a=10
try:
raise IndexError('错了')
except IndexError as e:
print(e)
#类 异常
class a(Exception):
def __init__(self,msg):
self.msg=msg
def __str__(self):
return str(self.msg+'五星级异常')
try:
raise a('我是')
except a as e:
print(e)
#dir 查看属性
class student():
def __init__(self,name,age,sex ,score):
self.name=name
self.age=age
self.sex=sex
self.score=score
a=student('张三',19,'男',99)
print(dir(a))
print(a.name,a.age,a.sex,a.score)
#类属性 删除
class student():
address='朝阳'
def __init__(self,name):
self.name=name
a=student('张三')
print(a.name,a.address)
a.address='海淀'
print(a.name,a.address)
#del a.address
delattr(a,'address')#正规用法
print(a.name,a.address)
#类
class a():
def __init__(self,name):
self.name=name
def hh():
print('你好')
z=a('张三')
z.h=hh
z.h()
#类方法
class a():
count=4
def __init__(self,name):
self.name=name
@classmethod#类方法
def hh(cls):
print(cls.count)
#print(a.count)
a.hh()
b=a('z')
b.hh()
print(isinstance(b,a))#判断一个对象是否是一个已知的类型
#单例
class a():
def __new__(cls, *args, **kwargs):
if not hasattr(a,'xg'):
cls.xg=object.__new__(a)
return cls.xg
def __init__(self,name):
self.name=name
z=a('小黑')
x=a('小欢')
print(z==x)
#创建多级目录 ,判断是否存在,不存在加入。
import os
a=input('请输入:')
b=a.split('\\')
p=os.getcwd()#获取当前工作目录
for d in b:
p=p+'\\'+d#多级目录
if not os.path.exists(p):
os.mkdir(p,0o777)
#创建新的地址
import os
a=input('请输入:')
b=a.split('\\')
p=os.getcwd()
for d in b:
p=os.path.join(p,d)#目录地址
if not os.path.exists(p):#
os.mkdir(p,0o777)