替换字符串中的特殊字符

时间:2016-09-08 09:27:53

标签: python string python-3.x

我遇到了一个问题,我想用我定义的字符串替换文本文件中的特殊字符。

"""
This is a guess the number game.
"""
import datetime, random
from random import randint

fileOpen = open('text.txt','r')
savedData = fileOpen.read()
fileOpen.close()
#print (savedData)

now = datetime.datetime.now()
date = now.strftime("%Y-%m-%d")
date = str(date)
#print(date)
time = now.strftime("%H:%M")
time = str(time)
#print(time)


savedData.replace(";", date)
print (savedData)

我尝试过看起来像这样的东西。我以为我可以从文件中读取,将其内容保存在我自己的字符串中,然后使用replace函数来更改字符串。 但是当我尝试进行最后一次打印时,注意到了saveData字符串。我做错了什么?

文本文件看起来像这样,一切都在一行:

Today it's the ; and the time is (. I'm feeling ) and : is todays lucky number. The unlucky number of today is #

1 个答案:

答案 0 :(得分:2)

str.replace不会改变字符串,没有字符串操作,因为字符串是不可变的。它返回替换字符串的副本,您需要将其分配给另一个名称:

replacedData = savedData.replace(";", date)

现在,您替换的字符串将保存为您在作业中指定的新名称。