0


【bug 简单处理】

bug 简单处理目录


个人昵称:lxw-pro
个人主页:欢迎关注 我的主页
个人感悟: “失败乃成功之母”,这是不变的道理,在失败中总结,在失败中成长,才能成为IT界的一代宗师。

bug是程序错误的统称

Python江湖中,将整治bug称为debug

  • “思路不清bug”是初学者最常见的bug,解决了它,就解决了大部分bug。
  • 思路不清bug主要是由于我们在面对问题时, 由于我们对问题及细节思考不到位,导致”一招不慎,全盘报错”。

有的时候还不报错,但就达不到我们想要的效果。
注释我们也使用过。 如果某行或某段代码写的总是不对,你

可以使用注释将当前代码注释掉, 再一步一步运行,排除错误

:print()函数与#注释搭配起来更好用。

film ={'星汉灿烂':['吴磊','赵露思'],'特种兵之女凤凰':['徐佳','刘晓洁'],'特战荣耀':['杨洋','李一桐'],'铤而走险':['大鹏','李梦','欧豪'],'使徒行者':['张家辉','古天乐']}print(film)
star =input('你想看哪位演员的电影?')for i in film:
    actors = film[i]# print(actors)if star in actors:print(star+'出演影片'+i)

在这里插入图片描述


思路不清

被动掉坑
有时候代码没问题, 而是用户操作不正确,导致程序出现问题。

敲代码的时候我们难免会碰到一些bug即便是技术大牛也是如此,是必不可少的,也是我们成长路上的最好的佐料,要有足够的耐心不断解决不断积累,躲过了这些坑,相信自己也是把解bug老手

bug

: append一次只能加一个

list=[]list.append('X')list.append('Y')list.append('Z')print(list)

[^1]

debug

:一次依次加一个

要是一起加进去,程序就会报错!!!

异常处理

在Python江湖中,Python给我们提供了一种异常处理机制,用来内部消化出现的异常,让程序继续执行。

  1. 不知道用户什么时候会输入正确,什么时候会输入错误, 设置while循环来接收输入, 只要用户输入的不是数字就一直循环,用户输入数字后用break跳出循环。
  2. 使用try…except…异常捕获机制, 用户输入不正确时就会一直提示。
whileTrue:try:
            age =int(input('你今年多大了?'))breakexcept ValueError:print('你输入的不是数字')if age <18:print('不可以抽烟喝酒烫头哦')print('你已经不是小孩啦!')

像这个虽然当中有被除数为0的,不过程序就不会报错,只会很正常地提示你,哪儿有误!try…except…果然好用,赞一个!

whileTrue:try:
        num =[5,6,0,10]for i in num:print(600/ i)except:print("被除数不能为0")break

异常是在程序运行过程中发生的错误,当异常发生时,需要对异常进行处理,否则整个程序将崩溃

try-except:

try 和 except 语句块可以用来捕获和处理异常,
try 后面跟的是

需要捕获异常的代码

,except 后面跟的是

捕获到异常后需要做的处理


每一个 try 语句块后面必须跟上一个 except 语句块,即使 except 语句块什么也不做。

try:print(1/0)# 除0异常withopen('test.log')asfile:
        read_data=file.read()# 文件不存在异常except ZeroDivisionError:print("ZeroDivisionError happened!")except FileNotFoundError:print("FileNotFoundError happened!")print("Done!")

try-except-else:

try-except 语句块后面可以跟上 else 语句块,
当没有异常发生时,

会执行

else 语句块中的代码

try:print(1/1)except ZeroDivisionError:print("ZeroDivisionError happened!")else:print("Exception not happened")print("Done!!")

try-except-else:

try-except-else 语句块后面还可以跟上 finally 语句块,
不管有没有发生异常,

finally

语句块中的代码

都会被执行

try:print(1/0)# print(2/1)except ZeroDivisionError:print("ZeroDivisionError happened!")else:print("Exception not happened")finally:print("Finally is executed!")print("Done!!!")

finally 在释放资源时会特别有用

:主动抛出异常。(主动抛出异常使用

raise

关键字)

————————————————————————————————————————————

pandas 每日一练:

注:print()只为转行
# -*- coding = utf-8 -*-
# @Time : 2022/7/21 20:25
# @Author : lxw_pro
# @File : pandas-4 练习.py
# @Software : PyCharm

import pandas as pd
import numpy as np

lxw4 = {"project": ['Python', 'Java', 'C', 'MySQL', 'Linux', 'Math', 'English', 'Python'],
       "popularity": [91, 88, 142, 136, np.nan, 146, 143, 148]}

df = pd.DataFrame(lxw4)

16、查看最后5行数据

zh = df.tail()
print("查看最后5行数据为:\n", zh)

print()

17、删除最后一行数据

df.drop([len(df)-1], inplace=True)
print("删除最后一行数据的结果为:\n", df)

print()

18、添加一行数据[‘go语言’, 66]

row = {'project': 'go语言', 'popularity': 66}
df = df.append(row, ignore_index=True)
print("添加一行数据['go语言', 6.6]的结果为:\n", df)

print()

19、对数据按照“popularity”列值得大小进行排序

df.sort_values('popularity', inplace=True)
print("排序后的结果为:\n", df)

print()

20、统计project列每个字符串的长度

df['project'] = df['project'].fillna('R')
df['str_len'] = df['project'].map(lambda x: len(x))
print("统计project列每个字符串的长度为:\n", df)

相关运行结果如下:

16~17:

在这里插入图片描述

18~19:
在这里插入图片描述
20:
在这里插入图片描述


每日一言:

我还有许多弯路要走,还会失望于许许多多的满足。一切都要等日后才能显示它的意义!
在人生的道路上,当你的希望一个个落空的时候,你也要坚定,要沉着!!


持续更新中…

点赞,你的认可是我创作的

动力


收藏,你的青睐是我努力的

方向


评论,你的意见是我进步的

财富


关注,你的喜欢是我长久的

坚持


在这里插入图片描述

欢迎关注微信公众号【程序人生6】,一起探讨学习哦!!!

标签: bug python 机器学习

本文转载自: https://blog.csdn.net/m0_66318554/article/details/125685870
版权归原作者 lxw-pro 所有, 如有侵权,请联系我们删除。

“【bug 简单处理】”的评论:

还没有评论