Python异常,增删改查

Posted 小布丁value

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python异常,增删改查相关的知识,希望对你有一定的参考价值。

Python异常,增删改查

ArrayList增删改查

JAVA中的

 class MyArrayList{
    int[] element;
   int size;
 }

自己的属性一定要加self
python中的

list_num.insert(0,9)#[9, 1, 2, 3]
print(list_num)
list_num.extend([3,4,5]) #[9, 1, 2, 3, 3, 4, 5]尾插多个
list_num.append(10) #[1, 2, 3, 10]尾插一个
#自己的属性必须加self
print(list_num)
class MyArrayList(object):
    def __init__(self):
        self.list_num =[]
        self.size =0

    def addHead(self,value):
        self.list_num.insert(0,value)
        #不允许方法重载
    # def addHead(self):
    #     print("方法重载")#TypeError: #addHead() takes 1 positional argument but 2 were given
    def addTail(self,value):
        self.list_num.append(value)
    def removeHead(self):
        self.list_num.pop(0)
    def removeTail(self):
        self.list_num.pop(len(self.list_num)-1)
    def change(self,scrValue,aimValue):#考虑多个值的情况
        for i in range(0,len(self.list_num)):
            if self.list_num[i] == scrValue:
                self.list_num[i]==aimValue

异常

java中的

try{
   
可能发生异常的代码

}catch(ArrayIndexOutOfBoundsException e){
 e.printStackTrace()
}catch(Exception e){
 e.printStackTrace()

}finally{
 file.close()
finally 无论异常发生都会被执行
}
throws
使用的位置不同:throw是写在方法体里面。throws则是用在方法头上面。

作用不同:throw就是直接抛出一个异常,而throws则是说我这个方法可能会抛出一个异常。

throw
'''

python中的

#异常
try:
    print(10/10)#ZeroDivisionError: division by zero
    print(list_num[0])
except (ZeroDivisionError,IndexError)as e:
    print(e,"出错了")#division by zero 出错了多个异常,抓第一个
except TypeError:
    print("单独处理TypeError")
else:
    print("没有出错")
finally:
    print("必定会被执行")
#raise类似throw
def change_index_value(list_num,index,value):
    if index<0 or index >=len(list_num):
        raise IndexError("下标传参错误")
        #assert index>0 and index<len(list_num)或者换成断言

    list_num[index]= value
change_index_value([1,2],-1,1)#raise IndexError("下标传参错误")

logging

#raise类似throws
import  logging #打印到文件中,不是一片红了
def change_index_value(list_num,index,value):
    if index<0 or index>len(list_num):
        raise IndexError("数组下标越界")
    list_num[index]= value
change_index_value([1,2],-1,1)#raise IndexError("下标传参错误")
#logging记录

文件操作

#a是追加 r是读 w是写
f= open("1.txt",mode="a",encoding="utf-8")
# f.write("world")#hell0world
# f.close()
# f.read(0)
# print(f.read())
print(f.readline())#hell0world
f.close()

用\\n可以实现换行

f = open("1.txt",mode="w",encoding= "utf-8")
list_num=["hellp\\n","mydear\\n","i love you"]
f.writelines(list_num)
f.close()

hellp
mydear
i love you

异常
在这里插入图片描述
没有11.txt

try:
    f=open("11.txt",mode="r",encoding="utf-8");
    # print(f.readline());#读一行
    # print(f.read(100));#读前一百行
    print(f.readlines());#全部读出来,以列表的形式存储['hell0world']
except NameError:
    print("文件查找失败")
else:
    print("文件读取成功")
finally:
    f.close()

以上是关于Python异常,增删改查的主要内容,如果未能解决你的问题,请参考以下文章

python实现员工信息表增删改查

如何用SSM框架写一个增删改查的功能

如何用SSM框架写一个增删改查的功能

Python字典的小析(增删改查)

ListCode增删改查代码生成器介绍

Python数据类型-列表(list)增删改查