raorr 发表于 2020-7-6 10:36:34

关于文件的代码

这是甲鱼29讲的作业
有点不懂的是,这个文件的保存路径并没有输入进去,他是怎么直接保存到我的桌面上的呢?


def file_write(file_name):
    f = open(file_name, 'w')
    print('请输入内容【单独输入\':w\'保存退出】:')

    while True:
      write_some = input()
      if write_some != ':w':
            f.write('%s\n' % write_some)这里是写了个什么呀,没懂{:10_266:}
      else:
            break

    f.close()

file_name = input('请输入文件名:')
file_write(file_name)

有人帮帮我吗

Twilight6 发表于 2020-7-6 10:37:25

本帖最后由 Twilight6 于 2020-7-6 10:47 编辑



有点不懂的是,这个文件的保存路径并没有输入进去,他是怎么直接保存到我的桌面上的呢?

Python 运行的默认工作目录就是在你的代码所在目录,所以说你如果直接输入文件名,那么 Python 会自动的在你 文件前面加上 工作目录

举个例子,我们运行的 .py 文件在桌面,那么默认的路径就是桌面,当你 open('文件名') 时候 ,Python 会在你的文件名前面 加上工作目录的路径

% 格式化,这里的 %s 是格式化字符串占位符,\n 是换行符的意思,在 f.write('%s\n' % write_some)代码 %s 被 write_some 的值所替换,然后附带上 \n 换行符,才能将写入的文件换行

write_some 参数就是接收你 input 输入的字符串,然后通过 f.write('%s\n' % write_some) 写入文件中,如果没有 \n 那么写入的字会全在一行,不会自动换行

附带甲鱼哥的扩展阅读图表:

https://xxx.ilovefishc.com/forum/202005/24/230813o357gg5atetggcm5.pnghttps://xxx.ilovefishc.com/forum/202005/27/142600ndywvddv0yiddvvw.png

heidern0612 发表于 2020-7-6 10:41:27

f.write('%s\n' % write_some)

1、这一句默认保存跟你的py文件一个路径,以写入的方式自动保存;写入后跟下面的close是配套使用的,写入后文件关闭自动保存。

2、'%s\n' %   什么的,%代表格式化,%s代表的就是格式化s,s的内容就是你后面的% write_some里的内容。

3、\n就是个简单的换行指令。

赚小钱 发表于 2020-7-6 11:57:31

Twilight6 发表于 2020-7-6 10:37
Python 运行的默认工作目录就是在你的代码所在目录,所以说你如果直接输入文件名,那么 Python 会 ...

默认工作目录,一般与语言无关,至少我接触的语言。

工作目录是执行代码的目录,不是代码所在目录。
页: [1]
查看完整版本: 关于文件的代码