书生.浦江大模型实战训练营——(二)Wordcount实现+Vscode连接远程服务器Debug

最近在学习书生.浦江大模型实战训练营,所有课程都免费,以关卡的形式学习,也比较有意思,提供免费的算力实战,真的很不错(无广 )!欢迎大家一起学习,打开LLM探索大门:邀请连接PS,邀请有算力哈哈

文章目录

一、Wordcount实现

1.任务一

请实现一个wordcount函数,统计英文字符串中每个单词出现的次数。返回一个字典,key为单词,value为对应单词出现的次数。

input:

python 复制代码
"""Hello world!  
This is an example.  
Word count is fun.  
Is it fun to count words?  
Yes, it is fun!"""

output:

python 复制代码
{'hello': 1, 'world': 1, 'this': 1, 'is': 4, 'an': 1, 'example': 1, 'word': 1, 'count': 2,
'fun': 3, 'it': 2, 'to': 1, 'words': 1, 'yes': 1}

TIPS:记得先去掉标点符号,然后把每个单词转换成小写。不需要考虑特别多的标点符号,只需要考虑实例输入中存在的就可以。

代码实现:

python 复制代码
import re  
from collections import defaultdict

def wordcount(text):  
    # 使用正则表达式去掉标点符号,并将文本转换为小写  
    cleaned_text = re.sub(r'[.,!?;:"]', '', text).lower()  
    
    # 将字符串分割成单词  
    words = cleaned_text.split()  
    
    # 使用defaultdict来统计单词出现次数  
    count = defaultdict(int)  
    
    for word in words:  
        count[word] += 1  
    
    return dict(count)  

# 示例使用  


text = """
Got this panda plush toy for my daughter's birthday,
who loves it and takes it everywhere. It's soft and
super cute, and its face has a friendly look. It's
a bit small for what I paid though. I think there
might be other options that are bigger for the
same price. It arrived a day earlier than expected,
so I got to play with it myself before I gave it
to her.
""" 
result = wordcount(text)  
print(result)

代码测试:

返回结果:

python 复制代码
{'got': 2, 'this': 1, 'panda': 1, 'plush': 1, 'toy': 1, 'for': 3, 'my': 1, "daughter's": 1, 'birthday': 1, 'who': 1, 'loves': 1, 'it': 5, 'and': 3, 'takes': 1, 'everywhere': 1, "it's": 2, 'soft': 1, 'super': 1, 'cute': 1, 'its': 1, 'face': 1, 'has': 1, 'a': 3, 'friendly': 1, 'look': 1, 'bit': 1, 'small': 1, 'what': 1, 'i': 4, 'paid': 1, 'though': 1, 'think': 1, 'there': 1, 'might': 1, 'be': 1, 'other': 1, 'options': 1, 'that': 1, 'are': 1, 'bigger': 1, 'the': 1, 'same': 1, 'price': 1, 'arrived': 1, 'day': 1, 'earlier': 1, 'than': 1, 'expected': 1, 'so': 1, 'to': 2, 'play': 1, 'with': 1, 'myself': 1, 'before': 1, 'gave': 1, 'her': 1}

二、Vscode连接远程服务器Debug

首先根据上面一篇博客,将Vscode连接上远程服务器,将wordcount.py代码同步到远程服务器上,在程序上打上三个断点:

选择左侧的debug按钮,选择运行与调试

即可进入debug界面,debug面板各按钮功能介绍:

  1. continue: 继续运行到下一个断点
  2. step over:跳过,可以理解为运行当前行代码,不进入具体的函数或者方法。
  3. step into: 进入函数或者方法。如果当行代码存在函数或者方法时,进入代码该函数或者方法。如果当行代码没有函数或者方法,则等价于step over。
  4. step out:退出函数或者方法, 返回上一层。
  5. restart:重新启动debug
  6. stop:终止debug

使用VSCode的debug功能来更容易地找到和修复你Python代码中的错误,也可以随时关注变量的变化,当然在每一步print也是一个不错的选择,不过遇到大型项目需要debug时,还是断点的效率更高。

相关推荐
碎梦归途25 分钟前
思科网络设备配置命令大全,涵盖从交换机到路由器的核心配置命令
linux·运维·服务器·网络·网络协议·路由器·交换机
七维大脑虚拟机26 分钟前
飞牛NAS公网IPv6+DDNS远程访问零延迟教程
运维·服务器·网络
中杯可乐多加冰36 分钟前
RAG 深度实践系列(七):从“能用”到“好用”——RAG 系统优化与效果评估
人工智能·大模型·llm·大语言模型·rag·检索增强生成
小天源1 小时前
nginx在centos7上热升级步骤
linux·服务器·nginx
宴之敖者、3 小时前
Linux——\r,\n和缓冲区
linux·运维·服务器
LuDvei3 小时前
LINUX错误提示函数
linux·运维·服务器
未来可期LJ3 小时前
【Linux 系统】进程间的通信方式
linux·服务器
心理之旅3 小时前
高校文献检索系统
运维·服务器·容器
Lenyiin3 小时前
Linux 基础IO
java·linux·服务器
The Chosen One9854 小时前
【Linux】深入理解Linux进程(一):PCB结构、Fork创建与状态切换详解
linux·运维·服务器