Python读取写入TXT正确姿势

时间:2024-11-18 11:27:53

Python 2.7
IDE Pycharm 5.0.3


爬下来,解析,存储,分析,可视化--一气呵成,当然我还在学前面三个哈哈哈

直奔主题


1.自己写入txt

直接上核心代码:

with open("","w") as f:
        f.write("这是个测试!")

这句话自带文件关闭功能,所以和那些先open再write再close的方式来说,更加pythontic!

结果就是这样:

这里写图片描述


2.将文件输入(print)的内容写入txt

我并不喜欢手写字符,更多时候用到的就是将程序跑出来的print写到txt中保存,比如说刚从豆瓣抓的内容,我想写进去,该怎么保存呢。这就用到了for循环啦。关于豆瓣的爬取请见我的前面那篇博客

我就是想把输出框的文字保存而已
这里写图片描述

#分模块测试,txt写入测试
# -*- coding: utf-8 -*-
from selenium import webdriver
import  as ui
import time

#driver_item=()
driver_item=(executable_path="")
url="/subject/3541415/?tag=%E7%A7%91%E5%B9%BB&from=gaia_video"
wait = (driver_item,10)
driver_item.get(url)

try:
    driver_item.find_element_by_xpath("//img[@class='bn-arrow']").click()
    #(lambda driver: driver.find_element_by_xpath("//div[@class='review-bd']/div[2]/div/div"))
    (1)
    comments_deep = driver_item.find_element_by_xpath("//div[@class='review-bd']/div[2]/div")

    print u"深度长评:"+comments_deep.text
    #print type(comments_deep.text)#<type 'unicode'>

    comments_wr=comments_deep.('utf-8')
    #print type(comments_wr)#<type 'str'>

    #title="盗梦空间"#中文命名文件名乱码,内容可用    title="Inception"
    with open("%"%title,"w") as f:#格式化字符串还能这么用!
        for i in comments_wr:
            (i)
except:
    print 'can not caught the comments!'

比较常用MODE

这里写图片描述


不清空连续写入

没有文件时候会自动创建的,但是!如果我重新对此进行写入,那么会先清空,然后再写,就是说以前写的没了,这样搞不好吧,我可是要记录很多东西的啊,万能的a出现了。。。

把核心代码改成这样就可以了,记得把w改成a,至于那个分割线问题,因为后续写入和前面已经有的会混在一块,所以我做分割用:

with open("%"%title,"a") as f:#格式化字符串还能这么用!
        f.write("\n-------------------------------------我是分割线-----------------------------------------\n")
        for i in comments_wr:
            f.write(i)

效果是这样的,不够好看自己再加细节,比如换行多几次

这里写图片描述



That’s all

用到啥学啥,学得快又学的牢
这里写图片描述


致谢

Python:文件的读取、创建、追加、删除、清空
@王志 –Python: 删除已安装的模块或包(modules or packages)