Python编写程序,打开一篇英文文章(存在当前目录下的文件in.txt中),为该文章生成词汇表(存到当前目录下的另一个文件words.txt中)。文章中单词指的是只由小写或大写字母组成的字符串,但词汇表中的单词都是以小写字母的形式出现,若文章中出现多个大小写无关的相同单词,只在词汇表中生成一个单词。假设生成的词汇表中单词个数不会超过100个,且每个单词的长度不会超过20。词汇表中的单词以字典顺序由小到大存放。 【输入形式】 输入的英文文章存储在当前目录下的文件in.txt中。 【输出形式】 输出的词汇表存储到当前目录下的文件words.txt中,每个单词独占一行,以字典顺序由小到大存放。

时间: 2024-01-22 12:18:33 浏览: 26
代码如下: ```python import string # 读取文章内容 with open('in.txt', 'r') as f: content = f.read() # 将文章中的标点符号替换为空格 for c in string.punctuation: content = content.replace(c, ' ') # 将文章中的单词转换为小写,去除多余的空格 words = content.lower().split() # 去除重复单词 words = list(set(words)) # 将单词按字典序排序 words.sort() # 将单词写入文件 with open('words.txt', 'w') as f: for word in words: f.write(word + '\n') ``` 代码思路: 1. 读取文件内容到变量`content`中。 2. 对于每个标点符号,用空格替换掉。 3. 将文章中的单词转换为小写,去除多余的空格。 4. 使用`set`去除重复单词。 5. 将单词按字典序排序。 6. 将单词写入文件。
相关问题

编写程序,打开一篇英文文章(存在当前目录下的文件in.txt中),为该文章生成词汇表(存到当前目录下的另一个文件words.txt中)python

以下是一个简单的 Python 程序,可用于读取一个英文文本文件,并生成包含所有单词的词汇表: ```python import string with open("in.txt", "r") as file: text = file.read() # Remove punctuation and convert to lowercase text = text.translate(str.maketrans("", "", string.punctuation)).lower() # Split into words words = text.split() # Remove duplicates and sort alphabetically words = sorted(set(words)) # Save words to file with open("words.txt", "w") as file: for word in words: file.write(word + "\n") ``` 这个程序首先打开名为 "in.txt" 的文件,并读取其中的文本。然后,它将所有标点符号删除,并将所有字母转换为小写。接下来,它将文本拆分为单词,并从中删除重复项,并按字母顺序排序。最后,它将单词写入名为 "words.txt" 的文件中。

编写python程序,打开一篇英文文章(存在当前目录下的文件in.txt中),为该文章生成词汇表(存到当前目录下的另一个文件words.txt中)。文章中单词指的是只由小写或大写字母组成的字符串,但词汇表中的单词都是以小写字母的形式出现,若文章中出现多个大小写无关的相同单词,只在词汇表中生成一个单词。假设生成的词汇表中单词个数不会超过100个,且每个单词的长度不会超过20。词汇表中的单词以字典顺序由小到大存放。

以下是实现该程序的Python代码: ```python # 打开文件 with open("in.txt", "r") as f: content = f.read() # 将文章中的单词转换为小写,并去除标点符号 words = content.lower().replace(",", "").replace(".", "").split() # 生成词汇表 word_set = set(words) # 去重 word_list = sorted(list(word_set)) # 排序 # 将词汇表写入文件 with open("words.txt", "w") as f: for word in word_list: f.write(word + "\n") ``` 首先,我们使用 `with open()` 打开文件,并将文章内容读入到 `content` 变量中。 然后,我们将文章中的单词转换为小写字母,并使用 `replace()` 方法去除标点符号。这里使用 `split()` 方法将文章分割成单词列表。 接下来,我们使用 `set()` 去除重复的单词,并将其转换为列表。使用 `sorted()` 方法对列表进行排序,得到词汇表。 最后,我们将词汇表写入到 `words.txt` 文件中,使用 `with open()` 打开文件并使用 `write()` 方法将单词逐行写入文件。

相关推荐

用python实现: 【问题描述】 编写程序,打开一篇英文文章(存在当前目录下的文件in.txt中),为该文章生成词汇表(存到当前目录下的另一个文件words.txt中)。文章中单词指的是只由小写或大写字母组成的字符串,但词汇表中的单词都是以小写字母的形式出现,若文章中出现多个大小写无关的相同单词,只在词汇表中生成一个单词。假设生成的词汇表中单词个数不会超过100个,且每个单词的长度不会超过20。词汇表中的单词以字典顺序由小到大存放。 【输入形式】 输入的英文文章存储在当前目录下的文件in.txt中。 【输出形式】 输出的词汇表存储到当前目录下的文件words.txt中,每个单词独占一行,以字典顺序由小到大存放。 【输入样例】 假如in.txt中的文章内容如下: C was originally designed for and implemented on the UNIX operating system on the DEC PDP-11, by Dennis Ritchie. The book is not an introductory programming manual. 【输出样例】 生成的词汇表存储在words.txt中,其内容应如下所示: an and book by c dec dennis designed for implemented introductory is manual not on operating originally pdp programming ritchie system the unix was 【样例说明】 读入的英文文章中,所有的英文字母串(由一个或多个连续字母组成)都将对应生成词汇表中的一个单词,例如:文章中的两个the和一个The对应生成词汇表中单词the;单个字母C也作为单个单词出现,所以也对应生成词汇表中的一个单词c。

最新推荐

recommend-type

用python生成1000个txt文件的方法

今天小编就为大家分享一篇用python生成1000个txt文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

Python实现合并同一个文件夹下所有txt文件的方法示例

主要介绍了Python实现合并同一个文件夹下所有txt文件的方法,涉及Python针对文件的遍历、读取、写入等相关操作技巧,需要的朋友可以参考下
recommend-type

python实现npy格式文件转换为txt文件操作

主要介绍了python实现npy格式文件转换为txt文件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

Python实现调用另一个路径下py文件中的函数方法总结

主要介绍了Python实现调用另一个路径下py文件中的函数方法,结合实例形式总结分析了Python针对不同文件夹中py文件调用操作的处理技巧与相关注意事项,需要的朋友可以参考下
recommend-type

基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip

基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip个人经导师指导并认可通过的高分毕业设计项目,评审分98分。主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。 基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统源码+数据集+详细文档(高分毕业设计).zip基于网络的入侵检测系统
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

【实战演练】MATLAB用遗传算法改进粒子群GA-PSO算法

![MATLAB智能算法合集](https://static.fuxi.netease.com/fuxi-official/web/20221101/83f465753fd49c41536a5640367d4340.jpg) # 2.1 遗传算法的原理和实现 遗传算法(GA)是一种受生物进化过程启发的优化算法。它通过模拟自然选择和遗传机制来搜索最优解。 **2.1.1 遗传算法的编码和解码** 编码是将问题空间中的解表示为二进制字符串或其他数据结构的过程。解码是将编码的解转换为问题空间中的实际解的过程。常见的编码方法包括二进制编码、实数编码和树形编码。 **2.1.2 遗传算法的交叉和
recommend-type

openstack的20种接口有哪些

以下是OpenStack的20种API接口: 1. Identity (Keystone) API 2. Compute (Nova) API 3. Networking (Neutron) API 4. Block Storage (Cinder) API 5. Object Storage (Swift) API 6. Image (Glance) API 7. Telemetry (Ceilometer) API 8. Orchestration (Heat) API 9. Database (Trove) API 10. Bare Metal (Ironic) API 11. DNS
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。