批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[问题求助] Python怎么去掉文本中的引号

raw文本的内容如下:

"寻找·李慧珍"
"欲望敦煌"
"寻找李慧珍"
"远行"
"蓝色魔力"
"距离
"自由的味道"
"珍重"
"咖啡时间"
"幸福的眼泪"
"My Way"

-----------------------------

# -*- coding: UTF-8 -*-
f = open("raw.txt")             # 返回一个文件对象
line = f.readline()                # 调用文件的 readline()方法
while line:
    line = f.readline()
    print line[1:-1]                # 这样好像不大行
f.close(

本帖最后由 cfwyy77_bat 于 2019-7-12 17:56 编辑

如果 每行都是有规则的引号(你的示例样本 有 一行最后没有引号的)
那你用这切片的方法应该可以的。  line[1:-2] 这样切应该可以的。  不过你这样的写法有点问题的。

可以参考一下我写的
  1. with open("1.txt","r",encoding="utf-8") as f:
  2.     for line in f:
  3.         print(line[1:-2])
复制代码
不过这种需求不指定python的话,还是sed好,一行完事。

TOP

用re findall直接返回一个list
  1. import re
  2. with open("test.txt", encoding="utf-8") as f:
  3.     txt = f.read()
  4.     result = re.findall("""\"(.*?)\"""",txt)
  5. print(result)
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

python 字符串方法里有strip和rstrip,lstrip这些方法可以脱掉字符串里指定的字符。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 2# cfwyy77_bat

搭车问一下,如何如何用sed删除没有关键字的所有行。
假设有个文本里面有root关键字,有root的全部保留。
其余的删除。
我试了!好像不对啊。

TOP

回复 5# netdzb
  1. sed '/root/!d' file
复制代码

TOP

回复 5# netdzb
  1. sed "/root/!d" 1.txt > 2.txt
复制代码
  1. sed -n "/root/p" 1.txt > 3.txt
复制代码
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我帮忙写的代码不需要付钱,不用找我要支付宝或微信账号。如果一定要给,请到微信群给大家发红吧。

TOP

with open('123.txt','r') as f:
    with open('222.txt', 'w') as f1:
        for line in f.readlines():
            f1.write(line.replace('"',''))

TOP

返回列表