python 中, 写入一个文档,要求第一行是 自定义标题 随后按照对应数据依次写入, 总共分成三列 :序号 标题 作者, 如何修改这段代码?
序号是根据当前数据顺序排列的,不是获取的
```python
def printDataList(dict):
'''
获取到的文件写入到本地
保存到当前目录的文件中。
'''
# 这边 encoding 表字符编码格式,如果出现乱码可以尝试修改编码格式来解决
with open(r"e:\百度贴吧数据.docx", 'a+', encoding='gbk') as f:
try:
for comment in dict:
f.write('标题:{} \t 作者:{} \t \n '.format(
comment['title'], comment['name']))
print('当前页面获取完成')
except Exception as e: print(e)
```
结合1楼答主的回复使用enumerate自动生成序号,另外标题只写第一行就行了不用每次都写,而且注意编码规范,尽量不要使用内置关键字做变量名,比如dict、list这些
def printDataList(data):
'''
获取到的文件写入到本地
保存到当前目录的文件中。
'''
# 这边 encoding 表字符编码格式,如果出现乱码可以尝试修改编码格式来解决
with open(r"e:\百度贴吧数据.docx", 'a+', encoding='gbk') as f:
try:
f.write('序号 \t 标题 \t\t 作者\t \n ')
for idx, comment in enumerate(data, start=1):
f.write('{} \t {} \t\t {} \t \n '.format(
idx, comment['title'], comment['name']))
print('当前页面获取完成')
except Exception as e: print(e)
printDataList([{'title':'python', 'name':'xxxx'}, {'title':'c', 'name':'yy'},])
有帮助的话,请点采纳该答案~
就差个序号?试试用enumerate自动生成序号
for num, comment in enumerate(dict):