f.close() 后,还能写入数据?

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

import os
f=open('3.txt','a')
os.dup2(f.fileno(),1)
f.close()
print('2345')
print('3456')
运行结果及报错内容
我的解答思路和尝试过的方法

1、f.close() 还能向3.txt里面写入数据,为什么?
2、最后2句
print('2345')
print('3456')
在运行窗口为什么没有任何输出?

我想要达到的结果

你这个代码运行直接报错了,去掉print语句不报错,但是也没任何执行结果,文件内也没内容,我这有另一个例子,你可以参考一下:

import os, sys
# 打开文件
fd = os.open( "3.txt", os.O_RDWR|os.O_CREAT )
#  写入字符串
# os.write(fd,'123')
os.write(fd,'123'.encode())
# 关闭文件
os.close( fd )
print ("关闭文件成功!!")

如有帮助,望采纳