最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

[oeasy]python0008-調(diào)試程序_debug

2022-10-17 07:39 作者:oeasy  | 我要投稿


調(diào)試程序 ??

回憶上次內(nèi)容

  • py 的程序是按照順序執(zhí)行的

    • 是一行行挨排解釋執(zhí)行的

    • 程序并不是數(shù)量越多越好

    • kpi也在不斷演化

  • 寫的代碼越多

  • 出現(xiàn)的bug就越多

    • 什么是bug

    • 如何找bug呢?

嘗試調(diào)試

  • 那如何調(diào)試呢???


  • 首先要有這個(gè)guido.py

  • 然后放到網(wǎng)上系統(tǒng)的剪貼板上

嘗試調(diào)試

  • 粘貼到vim中

  • 原來(lái)是一把執(zhí)行

  • 現(xiàn)在可以一步一步調(diào)試運(yùn)行

pdb3 guido.py

  • 使用pdb來(lái)進(jìn)行調(diào)試

    • pdb的意思是python's debugger??

  • 為什么要逐步運(yùn)行呢?

逐步運(yùn)行

  • 由于程序不知道哪里出的問題

    • 所以一步步來(lái)執(zhí)行

  • 一步步調(diào)試運(yùn)行的目的是去除bug

    • 也就是debug

  • 可是為什么把程序錯(cuò)誤叫做 bug ?? 呢?

help

  • 不知道怎么辦的時(shí)候

    • 就要求助(help)

  • 他給了我很多的命令

  • 還說(shuō)可以help 一下具體 topic

  • 查看你哪個(gè)topic呢?

具體幫助

  • 查看幫助的幫助

  • 沒有參數(shù)的話

    • 顯示所有命令

  • 有一個(gè)參數(shù)

    • 顯示這個(gè)參數(shù)的幫助

  • h(elp) 的縮寫是 h

    • elp可以省略

  • 這并不難 h h

  • 再看看其他單詞

list

  • l(ist)

    • 可以列出上下文11行的程序

    • 縮寫是l

  • 當(dāng)前行前面有個(gè)箭頭 ->

使用命令

  • 確實(shí)可以看到上下文

  • ->代表著當(dāng)前運(yùn)行到了哪里

  • 怎么往下走呢?

next

  • n(ext)

    • 可以往前走一句

    • 縮寫是n

  • 試一下

  • 把1982年輸出了

  • 然后當(dāng)前行來(lái)到了1995年

  • 如何判斷1995年在整個(gè)程序中的位置呢?

執(zhí)行

  • l(ist)

    • 可以列出當(dāng)前行的上下文

  • 在第2行

    • next就會(huì)到第3行

  • 當(dāng)然也可以一路next下去

一路next

  • 我們一路next

完成調(diào)試

  • 一路 next 下去

  • python 解釋器

  • 就是這么一步步地解釋執(zhí)行的

  • 確實(shí)是順序執(zhí)行的

  • 一行行挨排兒執(zhí)行的

  • 我們就一步步地把bug找出來(lái)

  • 就像找兇手一樣!

最真實(shí)的解謎游戲

  • debug是我見過(guò)最真實(shí)的解謎游戲了

  • 比什么劇本殺好玩多了

  • 一步步地分析

  • 找不到罪魁禍?zhǔn)椎臅r(shí)候

  • 需要冷靜地分析

  • 找到罪魁禍?zhǔn)椎臅r(shí)候

  • 那種快樂太真實(shí)了?。。?!

  • 終于來(lái)到最后一行

  • 如果到這里再next

  • 會(huì)發(fā)生什么呢?

最后一步

  • 執(zhí)行完最后一句之后

    • 就會(huì)返回(return)到python

    • 然后返回(return)到shell

  • 如果這個(gè)時(shí)候已經(jīng)到了程序的盡頭

  • 再next會(huì)發(fā)生什么呢?

繞圈

  • 到頭了就又重來(lái)

    • 就會(huì)重新執(zhí)行這個(gè)文件

    • 就圜道了

  • 可是這個(gè)和蟲子(bug)有什么關(guān)系呢?

第一個(gè)錯(cuò)誤 bug

  • 歷史上第一個(gè)程序錯(cuò)誤是

    • 這只蟲子bug??

    • 飛進(jìn)繼電器(relay)計(jì)算機(jī)(computer)里面來(lái)

    • 導(dǎo)致當(dāng)時(shí)的繼電器短路

  • 所以后來(lái)

    • 管錯(cuò)誤叫做bug

    • 管調(diào)試程序錯(cuò)誤叫做 debug

總結(jié)

  • py 文件的程序是按照順序

    • 一行行挨排解釋執(zhí)行的

    • 我們可以 pdb3 hello.py 來(lái)對(duì)程序調(diào)試

  • 順序執(zhí)行

    • 程序在文本中從上到下是一行行寫的

    • 解釋器是從上到下是一行行解釋的

    • 調(diào)試也是從頭到尾一行行執(zhí)行的

  • 但是這一行行的是在有點(diǎn)慢啊

  • 畢竟我們都是經(jīng)歷過(guò)萬(wàn)行代碼的人了

  • 那得按10000次的n才能執(zhí)行完???

  • 有快點(diǎn)的方法嗎???

  • 我們下次再說(shuō)!??

  • 藍(lán)橋->https://www.lanqiao.cn/teacher/workbench/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

  • 視頻->https://www.bilibili.com/video/BV1CU4y1Z7gQ


[oeasy]python0008-調(diào)試程序_debug的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
株洲县| 济南市| 饶阳县| 清苑县| 青州市| 灯塔市| 崇义县| 保德县| 锡林浩特市| 灯塔市| 南岸区| 莒南县| 应城市| 攀枝花市| 兴国县| 晋宁县| 于都县| 宣威市| 赞皇县| 宁晋县| 霍城县| 怀化市| 新宁县| 南城县| 友谊县| 大足县| 晋城| 邮箱| 景泰县| 岱山县| 八宿县| 古田县| 秦安县| 舟曲县| 长兴县| 英德市| 鄂伦春自治旗| 封丘县| 家居| 大冶市| 印江|