暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Python|模块-包-异常-文件

卓京IT之家 2018-10-09
234

《卓京IT之家》致力于打造碎片化学习理念,每天让你碎片时间收获一个技能。这里有:IT程序猿、攻城狮、码农们最需要的互联网发展趋势、最新行业动态、编程技巧、程序员笑话、IT技术资料、面试宝典、黑客技术、职场心得、生活感悟等等!点击上方"卓京IT之家",选择"置顶公众号",抓住碎片时间,抓住《卓京IT之家》,实现卓越人生。

前言


本篇文章重点讲解:Python的模块、包、异常及文件操作

目录

1

模块

2

3

异常

4

文件

模块

概念

Python中的模块(Module),是一个Python文件,以.py文件结尾,包含了Python对象定义和Python语句,类似Java中的多个单独的Java文件,把相关的代码分配到一个模块中可以实现代码的重用。模块中可以定义函数、类、变量,也可以包含可执行的代码

定义模块

文件名叫做python.py(可以自定义),内容:

#可执行语句

print("我是模块中的打印语句")

#函数

def eat(what):

    print("正在吃:",what)

#函数

def sleep(time):

    print("在{time}时间睡觉")

#变量

name="张三"

age=22

#类

class Person:

    def playDD(self):

        print("打豆豆")

在上述定义模块的案例中,定义了函数、类、变量、可执行语句

导入模块

导入模块,也就是说,在一个Python文件中想要使用另外一个Python文件中的函数或者变量,则需要导入模块,导入模块有三种方式:

import 模块名

#导入模块,注意python是python.py,就是上面定义的python.py模块

import python

#使用python模块中的变量

print(python.name)

#使用python模块中的函数

python.eat("馒头")

#定义python中的类

person=python.Person()

person.playDD()

注意:该种方式导入的模块,在调用模块中的函数、变量、类时,必须前面加上模块名

模块名.函数名

from 模块名 import 函数名

#导入模块中的某一个函数

from python import eat

#调用python模块中的eat函数

eat(“馒头”)

注意:该种方式导入的模块,在调用模块中的函数时,可以直接使用函数名即可,不需要跟着模块名

import 模块名 as 别名

#导入模块,并使用别名的方式,导入模块python,别名为p

import python as p

#调用模块中的函数和变量

print(p.name)

p.eat("馒头")

注意:该方式导入的模块,在调用模块中的函数时,可以使用别名

无论执行了多少次import,一个模块只会被导入一次

概念

在实际的开发中,一个大型的系统有成千上万的Python模块是很正常的事情。单单用模块定义Python的功能显然还不够,如果都放在一起显然不好管理并且有命名冲突的可能,因此Python中也出现了包的概念,和Java语言中的包Package是一样的,也就是说把模块分门别类的存放在不同的文件夹

创建包的步骤

1

创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;

2

在文件夹中创建一个_ _init_ _.py的模块文件,内容可以为空;【注意:必须要创建该文件,用来告诉python将该目录当成一个包来处理】

3

将相关的模块放入到文件夹中

比如:

将上述案例中的模块python.py放入到文件夹a中,则在导入包是,需要在模块前面加上文件夹名,语法格式:import 包.模块名 as 别名

比如:import a.python as p

异常

概念

【你不可能总是对的】因为我们是人,不是神,所以我们经常会犯错。当然程序员也不例外,就算是经验丰富的码农,也不能保证写出来的代码百分之百没有任何问题(要不哪来那么多的0Day漏洞),作为一个合格的程序员,要把用户想象成熊孩子,把他们想象成黑客,这样你写出来的程序自然会更加安全和稳定。

处理异常

try-except语句

try-except语法格式:

try:

    代码块【可能出会错的代码】

except  Exception[as reason]:

    出现异常的处理方式

try:

    a=10/0

    print(f"结果为{a}")

except Exception:

    print("出错了")

针对不同异常设置多个except

多个except语法格式:

try:

    代码块【可能出会错的代码】

except  异常1:

    出现异常1的处理方式

except  异常2:

    出现异常2的处理方式

try:

    a=10/2

    print(f"结果为{a}")

    b=1+"1"

    print(f"结果为{b}")

except ZeroDivisionError:

    print("除数不能为0")

except TypeError:

    print("类型错误")

对多个异常统一处理

except后边还可以跟着多个异常,然后对这些异常进行统一处理,语法格式:

try:

     代码块【可能出会错的代码】

except  (异常1,异常2):

    出现异常的处理方式

try:

    a=10/2

    print(f"结果为{a}")

    b=1+"1"

    print(f"结果为{b}")

except (ZeroDivisionError,TypeError):

    print("出错了")

捕获所有异常

如果你无法确定要对哪一类异常进行处理,只是希望在try语句块中一旦出现任何异常,可以给用户一个“看得懂”的提醒,语法格式:

try:

     代码块【可能出会错的代码】

except:

    出现异常的处理方式

try:

    a=10/2

    print(f"结果为{a}")

    b=1+"1"

    print(f"结果为{b}")

except:

    print("出错了")

try-finally语句

语法格式:

try:

     代码块【可能出会错的代码】

except:

    出现异常的处理方式

finally:

    有没有异常都会执行

try:

    a=10/0

    print(f"结果为{a}")

    b=1+2

    print(f"结果为{b}")

except:

    print("出错了")

finally:

    print("计算完了")

丰富的else语句

在Python中,else语句不仅能跟if语句搭,构成“要么怎么样,要么不怎么样”的句式;它还能跟循环语句(for语句或者while语句),构成“干完了怎么样,干不完怎么样”的句式;和异常处理进行搭配,构成“没有问题?那就干吧”的句式。

语法:

try:

     代码块【可能出会错的代码】

except:

    出现异常的处理方式

else:

    没有异常的处理方式

try:

    a=10/2

    print(f"结果为{a}")

    b=1+2

    print(f"结果为{b}")

except:

    print("出错了")

else:

    print("没有错误")

finally:

    print("计算完了")

文件

概念

在编程中,需要将部分数据永久保存到文件中,或者将文件中的内容读取出来,就需要学习Python中的文件操作。

打开文件

在Python中,使用open()函数打开文件并返回文件对象,语法:

file=open(file,mode=‘’)

文件的打开模式

打开模式

执行操作

r

以只读方式打开文件(默认)

w

以写入方式打开文件,会覆盖已存在文件

a

以写入模式打开,如果文件存在,则在末尾追加

t

以文本模式打开(默认)

b

以二进制模式打开

f=open("test.txt")

文件关闭

如果对文件进行了写入操作,那么应该在完成写入之后关闭文件,因为Python可能会缓存你写入的数据,如果途中发生类似断电之类的事故,那些缓存的数据根本就不会写入到文件中。

f.close()

文件读取

文件读取

read()

按字节为单位读取,默认读取所有

readline()

读取一行

list(f)

将文件中的内容放入到list中

#打开文件test.txt,编码格式为UTF-8

f=open("test.txt",encoding="UTF-8")

#读取所有文件内容

content=f.read()

#读取一行

content=f.readline()

#将读取的结果存放到list列表中

l=list(f)

文件的写入

如果要写入文件,请确保之前的打开模式有“w”或者“a”,否则会报错。注意,如果使用“w”模式写入文件,之前的文件内容将会全部删除

选中一个模板,出现的黑色方框标志着选中的范围

插入新模板、收藏、复制,都是针对黑色方框进行操作。方法:

f.write(“数据”)

f=open("test.txt","a",encoding="UTF-8",)

f.write("\n")

f.write("这是一行新的数据")

Python精选


围观

Python|和Python的第一次相遇


热文

Python|运算符-分支语句-循环


热文

Python|数据类型List-Set-Tuple-Dictionary


热文

Python|函数


热文

Python|面向对象


加关注

公众号:卓京IT之家

卓越人生

从卓京开始

长按识别左侧二维码,关注我们

给我一个心,可以不可以

Snail

陪伴是最长久的告白


文章转载自卓京IT之家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论