在初学Python中发现一个问题,就是我用Python的交互式解释器上一行一行的输入代码,到第三行后给我弹出了一个数字4
代码如下
>>>IS=['ddf']
>>>f=open('city3.csv','w')
>>>f.write(','.join(IS)+'\n')
4
我试过关闭其他后台程序,发现不是这些的问题。感觉应该是我的文件名导致的,因为文件名为city时输出的是6;文件名为city2时又是另外一个数字
有没有好人帮忙啊
在初学Python中发现一个问题,就是我用Python的交互式解释器上一行一行的输入代码,到第三行后给我弹出了一个数字4
代码如下
>>>IS=['ddf']
>>>f=open('city3.csv','w')
>>>f.write(','.join(IS)+'\n')
4
我试过关闭其他后台程序,发现不是这些的问题。感觉应该是我的文件名导致的,因为文件名为city时输出的是6;文件名为city2时又是另外一个数字
有没有好人帮忙啊
引自免费微信小程序:皆我百晓生
在Python中,当你使用open()
函数以写入模式('w')打开一个文件并调用write()
方法写入内容后,屏幕上显示的数字并不是错误或异常,而是表示你向文件写入的字符数。对于你的代码:
IS=['ddf']
f = open('city3.csv', 'w')
f.write(','.join(IS) + '\n')
在这段代码里,你将列表IS
中的元素用逗号连接起来形成字符串,并在末尾添加了一个换行符\n
,然后将其写入到名为'city3.csv'的文件中。由于列表IS
只有一个元素'ddf',所以写入的内容是'ddf\n',共包含4个字符(包括逗号和换行符)。
因此,在执行f.write()
之后,Python交互式解释器没有报错的情况下显示的数字4,实际上是告诉你成功写了4个字符到文件中。
至于你提到的不同文件名导致输出不同的数字,是因为每次你运行上述代码时,都会根据当前写入的字符串长度不同而显示不同的数字。如果你想要避免显示这个计数结果,可以简单地在每行命令后加一个分号;
来抑制输出:
IS=['ddf']
f = open('city3.csv', 'w')
f.write(','.join(IS) + '\n'); # 注意末尾的分号
但请注意,这并不会影响实际写入文件的内容。