Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从文本文件中的一行中切分两个范围_Python_File_Python 3.x_Strip_Substring - Fatal编程技术网

Python 从文本文件中的一行中切分两个范围

Python 从文本文件中的一行中切分两个范围,python,file,python-3.x,strip,substring,Python,File,Python 3.x,Strip,Substring,我试图通过循环提取Python3中打开的文本文件的每行两个范围 应用程序有一个条目小部件,该值存储在self.search中。然后,我循环浏览一个包含我想要的值的文本文件,并将结果写入self.searchresults,然后显示在一个文本框中 我试过下面第三行的变体,但没有成功 我想写出3:24和81:83的每一行中的字符 for line in self.searchfile: if self.search in line: line = line[3:24]+[81

我试图通过循环提取Python3中打开的文本文件的每行两个范围

应用程序有一个条目小部件,该值存储在
self.search
中。然后,我循环浏览一个包含我想要的值的文本文件,并将结果写入
self.searchresults
,然后显示在一个文本框中

我试过下面第三行的变体,但没有成功

我想写出3:24和81:83的每一行中的字符

for line in self.searchfile:
    if self.search in line:
        line = line[3:24]+[81:83]
        self.searchresults.write(line+"\n")
以下是我正在使用的文本文件的节略版本(原件):


离你不远了-你的问题是每次切片时需要指定要切片的内容:

for line in self.searchfile:
    if self.search in line:
        line = line[3:24] + line[81:83]
        self.searchresults.write(line+"\n")
。。。但您可能希望用空格分隔这两个字段:

        line = line[3:24] + " " + line[81:83]
但是,如果您发现自己不止一次使用
+
来构造字符串,那么您应该考虑改用Python(当您使用Python时,您可以在相同的操作中添加该换行符):


非常感谢,这正是我想要的,额外的信息,我一定会仔细阅读的。
        line = line[3:24] + " " + line[81:83]
for line in self.searchfile:
    if self.search in line:
        formatted = "%s %s\n" % (line[3:24], line[81:83])
        self.searchresults.write(formatted)