我想读取一个文本文件,想要一个特定的单词,然后想在它旁边附加一些其他单词。
例如:
我想在像约翰这样的文件中找到名字,然后想像约翰史密斯一样用"约翰"附加姓氏。
这是我到目前为止编写的代码。
usrinp = input("Enter name: ")
lines = []
with open('names.txt','rt') as in_file:
for line in in_file:
lines.append(line.rstrip('n'))
for element in lines:
if usrinp in element is not -1:
print(lines[0]+" Smith")
print(element)
这就是文本文件的样子:
My name is FirstName
My name is FirstName
My name is FirstName
FirstName is a asp developer
Java developer is FirstName
FirstName is a python developer
使用replace
是实现此目的的一种方法。
输入文件(名称.txt(:
My name is John
My name is John
My name is John
John is a asp developer
Java developer is John
John is a python developer
脚本:
name = 'John'
last_name = 'Smith'
with open('names.txt','r') as names_file:
content = names_file.read()
new = content.replace(name, ' '.join([name, last_name]))
with open('new_names.txt','w') as new_names_file:
new_names_file.write(new)
输出文件 (new_names.txt(:
My name is John Smith
My name is John Smith
My name is John Smith
John Smith is a asp developer
Java developer is John Smith
John Smith is a python developer
search_string = 'john'
file_content = open(file_path,'r+')
lines = []
flag = 0
for line in file_content:
line = line.lower()
stripped_line = line
if search_string in line:
flag = 1
stripped_line = line.strip('n')+' '+'smith n'
lines.append(stripped_line)
file_content.close()
if(flag == 1):
file_content = open(file_path,'w')
file_content.writelines(lines)
file_content.close()
**OUTPUT**
My name is FirstName
My name is FirstName
My name is FirstName
FirstName is a asp developer
Java developer is john smith
FirstName is a developer