Python(7)

2023-10-27

Python(7)

目录

Python(7)

函数

全局变量与局部变量

文件

错误与异常

finally


函数

python的函数使用def定义

def add(a, b):
    return a+b
def multiply(a, b):
    return a*b
a = 18
b = 180
print(add(a, b))
print(multiply(a, b))

返回多个值的函数

返回的是一个元组,如果是接收要用多个值来接收

def divid(a, b):
    return ((a + b), (a - b), (a*b), (a/b), (a%b))
a = 18
b = 180
print(divid(a, b))
ans1, ans2, ans3, ans4, ans5 = divid(a, b)
print(ans1, ans2, ans3, ans4, ans5)

全局变量与局部变量

全局变量作用整个程序,局部变量作用函数内,局部变量优先全局变量使用。

文件

以写模式打开文件 open("test.txt", "w"),文件不存在的话会自己创建。

读模式打开文件 open("test.txt", "r")

写文件 f.write("hello world, here is yozi")

读文件 f.read(5)

关闭文件close。

f = open("test.txt", "w")#写模式打开文件
f.write("hello world, here is yozi~")
f.write("hello world, here is yozi~")
f.close()#关闭文件
f = open("test.txt", "r")
print(f.read(5))#读5个字符,初始定位在头部
print(f.read(6))#再次读会在前面的基础之上
print(f.readline())#读一行
print(f.readlines())#读多行一行一列表
f.close()#关闭文件

在操作文件的过程中,只要没有close,那定位就一直在通过操作变化,下一次的操作的起始位置都是在上一次操作的结束位置。

错误与异常

以只读模式访问一个不存在的文件,会报错,需要处理异常,属于输出异常,使用IOError

try:
    f = open("1234.text", "r")
except IOError:
    print("文件没找到")

输出一个名称错误的变量,NameError

try:
    print(num)
except NameError:
    print("名称不存在")

同时捕获两种异常,报出现的第一个异常

try:
    f = open("1234.text", "r")
    print(num)
except (IOError, NameError) as result:
    print("出现异常")
    print(result)

所有异常的父类Exception,也是报出现的第一个异常

try:
    f = open("1234.text", "r")
    print(num)
except Exception as result:
    print("出现异常")
    print(result)

finally

无论发生什么也一定会执行。

由于文件最终必须被关闭,所以常用finally来操作关闭文件,finally在文件操作中的应用

try:
    f = open("1234.txt", "r")
    try:
        while True:
            content = f.readline()
            if len(content) == 0:
                break
            print(content)
    finally:
        f.close()
        print("关闭文件")
except Exception as result:
    print("发生异常:" , result)

在数据库连接时也常用到finally保证数据库连接关闭。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python(7) 的相关文章

随机推荐

  • 第二届“移动云杯”大赛医疗行业应用子赛道答疑会成功召开

    为帮助参赛团队了解第二届 移动云杯 算力网络应用创新大赛的命题背景 作品立意 提高作品质量 9月13日 我们召开了第二届 移动云杯 大赛答疑会 特别针对医疗行业应用子赛道的赛题作讲解和答疑 赛题背景 随着科技的不断进步 精准医学技术得到了广
  • 使用C++搭配OpenGL写了一个RenderEngine

    最近在学习OpenGL 看书看的再多 也不如自己动手写一个来看看 耗时一个多月 由于才学不久 各位大佬勿喷 用到了glfw Imgui glm这几个库 整合的资源里都带了 相机类 ifndef CAMERA H define CAMERA
  • 鉴源实验室

    作者 李伟 上海控安安全测评部总监 来源 鉴源实验室 社群 添加微信号 TICPShanghai 加入 上海控安51fusa安全社区 引言 上一篇开始我们介绍白盒的代码结构覆盖率测试 已经完成了语句覆盖测试的讲解 本篇我们介绍分支覆盖 01
  • Linux脚本实战之猜数字

    Linux脚本实战之猜数字 一 脚本要求 二 脚本示例一 三 脚本示例二 一 脚本要求 1 系统环境为RHEL8 0 2 脚本生成一个100以内的随机数 提示用户猜数字 3 根据用户的输入 提示猜对了 猜大了或猜小了 直到用户猜对为止 二
  • 使用构建Docker镜像的方式部署Vue+node项目

    目录 一 安装镜像 二 创建Dockerfile文件构建容器 1 添加Dockerfile文件 2 上传文件 3 构建镜像 4 运行容器 三 如何优化 Docker 镜像 准备工作 电脑安装了node js 配置了vue cli 环境 远程
  • windows驱动开发3:第一个驱动及调试

    一 创建项目 新建一个以Kernel Mode Driver Empty KMDF 为模板的驱动项目 项目名称HelloDriver 在项目中新建一个hello cpp文件作为驱动入口文件 写一点简单的代码做测试 hello cpp代码 i
  • python基于图像颜色的火焰识别

    本文基于图像颜色 主要结合RGB和HSI两种判断依据进行火焰识别 判断依据参考了以下文章 实在是非常感谢 OpenCV学习记录之视频中的火焰检测识别 python版基于颜色的火焰识别 判断条件如下 R gt redThre R gt G g
  • 数据竞赛专题

    为了帮助更多竞赛选手入门进阶比赛 通过数据竞赛提升理论实践能力和团队协作能力 DataFountain 和 Datawhale 联合邀请了数据挖掘 CV NLP领域多位竞赛大咖 将从赛题理解 数据探索 数据预处理 特征工程 模型建立与参数调
  • mmcv读取配置文件,在windows上无法创建临时文件解决方法

    报错是写入 盘的Temp没有权限 因此修改到其他目录 在config中修改以下两个函数 def substitute predefined vars filename temp config name file dirname osp di
  • 用工厂模式管理多个solidity智能合约

    我们写了一份小的计算合约作为Hello World 如果我们可以创建一个允许用户创建自己的计数器的合约怎么办 让我们创建我们的合约CounterFactory 它将管理所有其他计数器Counters 它将包含一个映射 将所有者与其计数器合约
  • captcha验证码入门

    kaptcha是一个简单易用的验证码生成工具 而且支持中文 你还可以配置其很多属性 用法 1 首先到http code google com p kaptcha downloads list把压缩文件下下来 然后把里面的jar文件加到自己的
  • 项目一:用OpenCV识别银行卡号

    import cv2 def sort contours cnts method left to right reverse False i 0 if method right to left or method bottom to top
  • 阿里巴巴的数据库连接池 druid 优点

    阿里的 druid 它不仅仅是一个数据库连接池 它还包含一个ProxyDriver 一系列内置的JDBC组件库 一个SQL Parser Druid 相对于其他数据库连接池的优点 1 强大的监控特性 通过Druid提供的监控功能 可以清楚知
  • 凯恩帝数控系统面板介绍_凯恩帝数控车床操作面板按钮详解!

    KND1TB数控系统操作 在 视图 下拉菜单或者浮动菜单中选择 控制面板切换 后 数控系统操作键盘会出现在视窗的右上角 其左侧为数控系统显示屏 如下图所示 用操作键盘结合显示屏可以进行数控系统操作 KND1TB 输入面板 按键介绍 数字键
  • 黑苹果系统--Parallels Desktop虚拟机使用

    1 挂载外部磁盘到windows虚拟机 1 通过USB将外部磁盘连接至Mac 2 在虚拟机配置窗口中 选择 Hardware gt Add gt Hard Disk 3 在 Type 菜单中选择 Physical Disk 并在 Locat
  • Linux EOIP — 二层协议

    一 协议介绍 EOIP是一个 MikroTik的 Linux使用 TAP的 EoIP EoIPv6隧道的实现 EoIP Ethernet over IP 和 EoIPv6 Ethernet over IPv6 是 MikroTik Rout
  • MATLAB---同态滤波

    同态滤波 clc clear close all 清理命令区 清理工作区 关闭显示图形 warning off 消除警告 feature jit off 加速代码运行 tic filename pathname uigetfile bmp
  • 如何确定自己的科研课题?

    许多研究生刚入学的时候对科研都是一头雾水 不知道文献如何检索 不知道科研该如何发展 总有一段很长的时间在惆怅着我究竟该做些什么 而在写科研论文 确定科研选题就是第一步 那么 到底如何才能确定自己的科研课题呢 本文主要为大家分享以下三点 选题
  • 手把手_下载与安装Ubuntu_18.04_Linux系统

    1 下载Ubuntu镜像文件 1 找到官网 Ubuntu官网 注 不想了解官网的 请直接跳到清华镜像网 2 找到下载入口 如果您要下载最新版本的系统 就直接点击download 1 但是本文以18 04版本为例 故此 点击2处 3 找到国内
  • Python(7)

    Python 7 目录 Python 7 函数 全局变量与局部变量 文件 错误与异常 finally 函数 python的函数使用def定义 def add a b return a b def multiply a b return a