编写一个Python程序,获取txt文本文件的内容,并将只属于汉字的内容写入另一个文件中
时间: 2024-09-28 21:15:16 浏览: 40
编写一个简单的Python程序,你可以使用内置的`open()`函数读取文本文件,然后通过正则表达式筛选出汉字内容,最后将其写入新的文件。这里是一个示例:
```python
import re
# 定义函数来过滤汉字
def filter_chinese(text):
return re.sub(r'[^\u4e00-\u9fa5]', '', text) # 正则表达式匹配非汉字字符
# 输入文件路径
input_file = '输入.txt'
output_file = '汉字输出.txt'
# 打开并读取原始文件
with open(input_file, 'r', encoding='utf-8') as f_in:
content = f_in.read()
# 过滤汉字并将结果写入新文件
filtered_content = filter_chinese(content)
with open(output_file, 'w', encoding='utf-8') as f_out:
f_out.write(filtered_content)
print(f"汉字已成功保存到'{output_file}'")
相关问题
python编写一个程序,通过键盘将曹操的《观沧海》写入文本文件 gch.txt 中
可以使用 Python 的文件操作来实现。以下是一个示例代码:
```python
filename = "gch.txt"
# 读取输入
text = input("请输入曹操的《观沧海》:")
# 打开文件并写入内容
with open(filename, "w", encoding="utf-8") as file:
file.write(text)
print("已将《观沧海》写入文件 %s 中。" % filename)
```
运行程序后,会提示输入曹操的《观沧海》的内容。输入后,程序将内容写入文件 `gch.txt` 中。如果文件不存在,则会创建该文件;如果文件已存在,则会覆盖原来的内容。最后,程序会输出写入成功的提示信息。
需要注意的是,在写入文件时,我们使用了 `encoding="utf-8"` 参数来指定文件的编码格式,以防止中文字符出现乱码。
使用python编写代码,要求生成一个文本文件: 数字(10)、英文(10)、汉字(10)共随机生成30字符
你可以使用Python的`random`模块和`string`模块来实现这个需求。下面是一个简单的示例代码:
```python
import random
import string
# 定义各个字符类型的池
digits = string.digits
english_chars = string.ascii_letters
chinese_chars = "你好世界" # 这里只是一个简化的例子,实际应用中应从合适的汉字库获取
# 随机选择字符
total_chars = 30
num_chars = random.randint(0, total_chars // 3)
eng_chars = random.randint(0, total_chars // 3)
chn_chars = total_chars - num_chars - eng_chars
# 生成并写入文件
with open("random_text.txt", "w") as file:
for _ in range(num_chars):
file.write(random.choice(digits))
for _ in range(eng_chars):
file.write(random.choice(english_chars))
for _ in range(chn_chars):
file.write(random.choice(chinese_chars))
# 确保所有字符都被写入
file.flush()
file.close()
阅读全文