武汉理工大学实验十第一关

任务描述

根据附件文件对酒店评价数据进行分析,本题使用jieba库中的lcut函数对数据进行分词。

 
  1. import jieba
  2. test_str = '武汉理工大学是一所世人仰慕的大学'`
  3. result = jieba.lcut(test_str) # 参数是字符串,结果是将字符串切分为词的列表 `
  4. print(result) # ['武汉理工大学', '是', '一所', '世人', '仰慕', '的', '大学']

文件数据每行包括评论属性和评论内容两个数据,其中评论属性中’1‘代表好评,’0‘代表差评。

要求实现以下功能:

文件编码格式为GBK,读取函数示例如下:

 
  1. with open('comment.csv', 'r', encoding='GBK') as f:
  2. ls=[i.strip().split(',',maxsplit=1) for i in f.readlines()[1:]]

输入n

如果n为’总评‘,分别输出该文件评论总数,好评条数,差评条数,输出格式参照示例一。

如果n为’平均‘,输出该文件中所有评论内容的平均长度(不需要排除字母,标点符号和数字),输出四舍五入后的整数,输出格式参照示例二。

如果n为’好评‘,对文件中所有好评进行词频分析,并输出词频出现最多的前15个词以及出现次数,输出格式参照示例三

如果n为’差评‘,对文件中所有差评进行词频分析,并输出词频出现最多的前15个词以及出现次数,输出格式参照示例四

注:3,4两项功能中统计的词语,要求长度不小于2,不是数字组成,并且不是排除词.

排除词 ex=['不错','比较','可以'

### 武汉理工大学 Python 实验三 第八关 解题思路与实验要求 根据武汉理工大学 Python 实验三的内容,第八关通常涉及综合运用前面所学的知识点来解决实际问题。结合引用内容和常见的实验设计[^1],以下是对第八关可能的实验要求及解题思路的分析。 #### 1. 实验要求 第八关的实验要求通常包括以下几个方面: - **综合知识点**:实验可能要求学生综合运用函数、条件语句、循环语句、字符串处理、文件操作等基础知识。 - **具体任务**:例如实现一个简单的加密解密程序(如凯撒密码[^3])、处理文本文件中的数据、或者完成一个小型的网络通信任务。 - **输入输出规范**:明确输入数据格式输出结果的要求。 - **代码优化**:要求学生对代码进行优化,确保程序的可读性和效率。 #### 2. 解题思路 以下是可能的解题思路,假设实验任务为实现一个凯撒密码加密解密程序: ##### (1) 凯撒密码加密 ```python def caesar_encrypt(text, shift): result = "" for char in text: if char.isalpha(): # 判断是否为字母 base = ord('A') if char.isupper() else ord('a') result += chr((ord(char) - base + shift) % 26 + base) else: result += char # 非字母字符保持不变 return result ``` ##### (2) 凯撒密码解密 ```python def caesar_decrypt(text, shift): return caesar_encrypt(text, -shift) # 解密即为负向加密 ``` ##### (3) 文件操作 如果实验要求从文件中读取明文或密文,并将结果写入另一个文件,可以使用以下代码: ```python # 读取文件内容 with open("input.txt", "r", encoding="utf-8") as file: plaintext = file.read() # 加密并保存到输出文件 ciphertext = caesar_encrypt(plaintext, 3) with open("output.txt", "w", encoding="utf-8") as file: file.write(ciphertext) ``` ##### (4) 用户交互 如果需要用户输入加密或解密模式以及移位值,可以添加以下交互逻辑: ```python mode = input("选择模式 (E: 加密, D: 解密): ").strip().upper() shift = int(input("输入移位值: ")) text = input("输入文本: ") if mode == 'E': result = caesar_encrypt(text, shift) elif mode == 'D': result = caesar_decrypt(text, shift) else: result = "无效模式" print("结果:", result) ``` #### 3. 注意事项 - 确保程序能够正确处理大小写字母[^3]。 - 对于非字母字符(如空格、标点符号),应保持其原样。 - 如果实验涉及文件操作,注意文件路径和编码格式,避免因编码问题导致错误。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值