Python---异常机制

Python从入门到高手(内部资源-配学习资料)_哔哩哔哩_bilibili

# 语法错误和异常
# 语法错误
# while True:
#     print('--------')
#
# number = 100


def func():
    global number
    number += 1


# 异常:程序运行的时候报出来的,xxxError
def chu(a, b):
    return a / b


# chu(1, 0)
x = chu(4, 2)
print('------>', x)

# 异常处理:
''':cvar
try:
    可能出现异常的代码
except:
    如果有异常执行的代码
[finally:
    (可选)无论是否存在异常都会被执行的代码]
    
情况1:
try:
    有可能产生多种异常
except 异常类型:
    print()
except Exception:
    pass
如果是多个except,异常类型的顺序需要注意,最大的Exception需要放到最后

情况2:获取Exception的错误原因

'''


def func():
    try:
        n1 = int(input('输入第一个数字:'))
        n2 = int(input('输入第二个数字'))
        # 加法
        per = input('输入运算符号(+-*/)')
        result = 0
        if per == '+':
            result = n1 + n2
        elif per == '-':
            result = n1 - n2
        elif per == '*':
            result = n1 * n2
        elif per == '/':
            result = n1 / n2
        else:
            print('符号输入错误!')
        print('结果是:', result)

        # 操作列表
        list1 = []
        list1.pop()
    # except:
    #     print('存在问题')
    except ZeroDivisionError:
        print('除数不能为0!')
    except ValueError:
        print('必须输入数字!!!')
    except Exception as err:
        print('出错啦!', err)  # --->err的内容就是错误的原因


func()

-------------------------------------------------------

# 异常情况4:
''':cvar
# 文件操作  stream = open()  stream.read()  stream.close()
try:
    pass
except:
    pass
finally:
    pass
'''


def func():
    stream = None
    try:
        stream = open(r'C:\Users\RSB\Desktop\Python文件夹\p1\aa.txt')
        container = stream.read()
        print(container)
        return 1
    except Exception as err:
        print(err)
        return 2
    finally:
        print('---finally---')
        if stream:
            stream.close()
        return 3


func()
x = func()
print(x)

------------------------------------------------------------------------------

# 抛出异常 raise
# 注册 用户名必须6位

def register():
    username = input('输入用户名:')
    if len(username) < 6:
        raise Exception('用户长度必须6位以上')
    else:
        print('输入的用户名:', username)


try:
    register()
except Exception as err:
    print(err)
    print('注册失败')
else:
    print('注册成功')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`python-daemon` 是一个Python库,用于将你的应用程序转换为守护进程(daemon)。它提供了一种简单的方法,可以让你的应用程序在后台运行,并且具有守护进程的特性,如自动重启、日志记录等。 下面是使用 `python-daemon` 库的基本步骤: 1. 安装 `python-daemon` 库:使用 `pip` 命令安装 `python-daemon` 库: ```bash pip install python-daemon ``` 2. 导入必要的模块:在你的Python代码中,导入 `daemon` 模块和其他需要使用的模块。 ```python import daemon import time ``` 3. 编写你的应用程序逻辑:在你的代码中编写应用程序的逻辑。这可以是一个函数或一个类。 ```python def my_application_logic(): while True: # 在这里编写你的应用程序逻辑 print("Running...") time.sleep(1) ``` 4. 使用 `daemon.DaemonContext` 转换为守护进程:在主程序中使用 `daemon.DaemonContext` 上下文管理器将你的应用程序转换为守护进程。 ```python with daemon.DaemonContext(): my_application_logic() ``` 这将使你的应用程序在后台以守护进程的形式运行。当你运行这段代码时,它将在后台持续运行,并且你的终端会立即返回。 5. 运行你的代码:运行你的Python脚本,将其转换为守护进程。 ```bash python your_script.py ``` 现在,你的应用程序将在后台作为守护进程运行,并且你可以通过日志文件或其他机制来记录输出和错误。 请注意,守护进程转换后,不会再有终端输出。你可以使用日志记录或其他方法来捕获和处理输出。同时,确保在你的应用程序中正确处理异常,并在必要时进行重启等操作。 这只是一个简单的示例,你可以根据自己的需求和应用程序的逻辑进行更复杂的设置和优化。详细了解 `python-daemon` 库的文档可以帮助你更好地使用和配置守护进程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值