前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python模块、包、异常、文件(案例)

Python模块、包、异常、文件(案例)

作者头像
py3study
发布2020-01-19 10:54:52
7080
发布2020-01-19 10:54:52
举报
文章被收录于专栏:python3python3

Python模块、包、异常、文件(案例)

python.py

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

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

#函数

def eat(what):

    print("正在吃:",what)

#函数

def sleep(time):

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

#变量

name="张三"

age=22

#类

class Person:

    def playDD(self):

        print("打豆豆")

test.py

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

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

#调用python模块中的变量
print(Python.name)        #张三

#调用python模块中的函数
Python.eat("水果    ")        #正在吃: 水果

Python.sleep("12:30")    #在12:30时间睡觉

#定义python中的类
person=Python.Person()
person.playDD()        #打豆豆

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

#第二种:from 模块名 import 函数名
#导入模块中的某一个函数
from Python import eat
#调用python模块中的eat函数
eat("午餐")    #正在吃: 午餐
#调用python模块中的变量
print(Python.age)    #22

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

#第三种:import 模块名 as 别名
import Python as p
#调用python模块中的变量
print(p.name)    #张三
p.eat("鸡腿")    #正在吃: 鸡腿

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

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

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

#创建包的步骤
    # (1)创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;
    # (2)在文件夹中创建一个_ _init_ _.py的模块文件,内容可以为空;【注意:必须要创建该文件,用来告诉python将该目录当成一个包来处理】
    # (3)将相关的模块放入到文件夹中


# 三异常

# 处理异常
# 1.try-except语句
# try-except语法格式:
# try:
#     代码块【可能出会错的代码】
# except  Exception[as reason]:
#     出现异常的处理方式

try:
    a=10/0
    print(f"结果为{a}")
except Exception:
    print("出错了")

#2.针对不同异常设置多个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("类型错误")

#3.对多个异常统一处理
# except后边还可以跟着多个异常,然后对这些异常进行统一处理,语法格式:
    # try:
    #      代码块【可能出会错的代码】
    # except (异常1,异常2):
    #     出现异常的处理方式

try:
    a=10/2
    print(f"结果为{a}")
    b=1+"1"
    print(f"结果为{b}")
except (ZeroDivisionError,TypeError):
    print("出错了")


#4.捕获所有异常
# 如果你无法确定要对哪一类异常进行处理,只是希望在try语句块中一旦出现任何异常,可以给用户一个“看得懂”的提醒,语法格式:
    # try:
    #      代码块【可能出会错的代码】
    # except:
    #     出现异常的处理方式

try:
    a=10/0
    print(f"结果为{a}")
    b=1+"1"
    print(f"结果为{b}")
except:
    print("出错了")


#5.try-finally语句
# 语法格式:
    # try:
    #      代码块【可能出会错的代码】
    # except:
    #     出现异常的处理方式
    # finally:
    #     有没有异常都会执行

try:
    a=10/0
    print(f"结果为{a}")
    b=1+"1"
    print(f"结果为{b}")
except:
    print("出错了")
finally:
    print("aaa")

#6.丰富的else语句
# 在Python中,else语句不仅能跟if语句搭,构成“要么怎么样,要么不怎么样”的句式;它还能跟循环语句(for语句或者while语句),
# 构成“干完了怎么样,干不完怎么样”的句式;和异常处理进行搭配,构成“没有问题?那就干吧”的句式。
# 语法:
    # try:
    #      代码块【可能出会错的代码】
    # except:
    #     出现异常的处理方式
    # else:
    #     没有异常的处理方式

try:
    a=10/2
    print(f"结果为{a}")
    b=1+"1"
    print(f"结果为{b}")
except:
    print("出错了")
else:
    print("没有错误")
finally:
    print("计算完成")

#四、文件
# 在编程中,需要将部分数据永久保存到文件中,或者将文件中的内容读取出来,就需要学习Python中的文件操作。
#1.打开文件
    # 在Python中,使用open()函数打开文件并返回文件对象,语法:
    # file=open(file,mode=‘’)

# f=open("test.txt")

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

# f.close()

#3.文件读取
#打开文件test.txt,编码格式为GBK
f=open("test.txt",encoding="GBK")
#读取所有文件内容
# content=f.read()
# print(content)    #啊啊啊 这是一行新的数据 这是一行新的数据
#读取一行
# content=f.readline()
# print(content)    #啊啊啊
#将读取的结果存放到list列表中
# l=list(f)
# print(l)    #['啊啊啊\n', '这是一行新的数据\n', '这是一行新的数据']

#4.文件的写入
#如果要写入文件,请确保之前的打开模式有“w”或者“a”,否则会报错。注意,如果使用“w”模式写入文件,之前的文件内容将会全部删除
# 选中一个模板,出现的黑色方框标志着选中的范围
# 插入新模板、收藏、复制,都是针对黑色方框进行操作。方法:
# f.write(“数据”)

# f=open("test.txt","a",encoding="GBK",)
# f.write("\n")
# f.write("这是一行新的数据")
# print("完成")

text.txt

啊啊啊 这是一行新的数据 这是一行新的数据

今天的测试就到这里了,谢谢大家的支持!

如果大家想浏览我的下一篇文章,请留言

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-03-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档