Intern LM-入门岛-LESSON2-Python基础知识

直接做作业了

作业1

词频统计

def wordcount(text):
    # 移除前后的空白字符,并用正则表达式去除非字母、数字字符
    text = text.strip()
    text = re.sub(r'[^\w\s]', '', text)  

    # 过滤掉空字符串
    textlist = list(filter(None, text.lower().split(' ')))

    word_freq = {}

    for word in textlist:
        if word in word_freq:
            word_freq[word] += 1
        else:
            word_freq[word] = 1
    # 排个序?
    sorted_word_freq = dict(sorted(word_freq.items(), key=lambda item: item[1], reverse=True))

    return sorted_word_freq

作业2

关于使用vscode debug,之前一直是使用断点debug的,但是基础只是还不是特别牢固,mark一下:

在这里插入图片描述

可以使用“Run and Debug”侧边栏顶部的按钮来单步执行代码。这样,你可以逐行运行代码,并查看每行代码执行后的效果。

debug面板各按钮功能介绍:

  • 1: continue: 继续运行到下一个断点

  • 2: step over:跳过,可以理解为运行当前行代码,不进入具体的函数或者方法。

  • 3: step into: 进入函数或者方法。如果当行代码存在函数或者方法时,进入代码该函数或者方法。如果当行代码没有函数或者方法,则等价于step over。

  • 4: step out:退出函数或者方法, 返回上一层。

  • 5: restart:重新启动debug

  • 6: stop:终止debug


调试中的单步执行命令

在调试程序时,step overstep intostep out 是三种常用的单步执行命令。它们用于控制调试器在代码中的移动方式,各自的作用和适用场景如下:

1. Step Over(跳过)

  • 概念:执行当前行代码,但如果该行代码包含函数或方法调用,则不进入该函数或方法,而是直接执行完函数后跳到下一行代码。

  • 使用场景:当你对当前行代码的函数或方法的内部实现不感兴趣,只想查看执行完这一行后,程序的变化或结果时,可以使用Step Over

  • 图示说明

    def add(a, b):
        return a + b
    
    x = 5
    y = 10
    result = add(x, y)  # 当前行
    print(result)
    
    

当调试到 result = add(x, y) 这一行时,使用 Step Over 会直接跳到 print(result) 行,而不进入 add 函数。

2. Step Into(进入)

  • 概念:如果当前行代码包含函数或方法调用,调试器会进入该函数或方法,逐行执行其内部代码。
  • 使用场景:当你需要检查函数或方法的内部实现或细节,或找出某个函数调用中可能存在的问题时,使用 Step Into
  • 图示说明
def add(a, b):
    return a + b

x = 5
y = 10
result = add(x, y)  # 当前行
print(result)

调试到 result = add(x, y) 这一行时,使用 Step Into 会进入 add 函数内部进行调试,即进入 return a + b 行。

3. Step Out(退出)

  • 概念:退出当前函数或方法,并返回到调用该函数或方法的地方,继续执行。
  • 使用场景:当你在函数内部调试后,发现问题不在该函数内,或已经检查完该函数,想快速返回到上一层代码执行时,可以使用 Step Out
  • 图示说明
def add(a, b):
    return a + b

def multiply(a, b):
    return a * b

x = 5
y = 10
result = add(x, y)
result2 = multiply(x, y)  # 当前行
print(result2)


调试进入 multiply 函数内部时,如果使用 Step Out,会直接跳出 multiply 函数,返回到 print(result2) 这一行。

命令行调试截图:
在这里插入图片描述
在这里插入图片描述
可能自己对命令行调试还不是很擅长,感觉不如打断点…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值