使用方法replace(),但并没有发生替换

从txt文件中读取两行文字,然后用replace()把其中的Python替换为Java,但是没有起作用。

这是txt文件:
In Python you can deal with data.
In Python you can get some Internet data.

这是程序:

with open('learning_python.txt') as file_object:
    for line in file_object:
        line.replace('Python', 'Java')
        print(line)

理想输出:
In Java you can deal with data.

In Java you can get some Internet data.

实际输出:
In Python you can deal with data.

In Python you can get some Internet data.

希望大家帮帮忙。

str类型的replace方法是基于复制内容的替换,它应该是这样的格式:
def replace(old, new) -> str:
它不会对原字符串进行修改,以起到保护原数据的作用,而被替换后的字符串则作为返回值被函数返回,应当采用赋值语句:line = line.replace('Python, 'Java')

line= line.replace('Java','Python') #要赋值

没有传递替换后的字符串,replace方法不会改变原字符串而是会返回一个修改后的字符串

with open('learning_python.txt','r') as file_object:#'r'表示以只读方式打开文件
    for line in file_object:#按换行分割
        line_changed = line.replace('Python', 'Java')#将替换后的字符串传递给line,如果不传递line不会变更
        print(line_changed,end='')

对替换后的line要进行赋值,否则就会打印没有修改的line

with open('learning_python.txt') as file_object:
    for line in file_object:
        l=line.replace('Python', 'Java')
        print(l)

img
replace没问题,看看是哪里报错了