我有一个test.txt文件,其中包含:
blue.purple
blue.red
我想在output.txt上找到每一行的第二部分和第三部分,如下所示:
with open ('test.txt', 'r') as file1, open('output.txt', 'w') as file2:
for line in file1:
file2.write(line.partition('.')[2]+ '\n')
这是python代码:
blue.purple.green
blue.red.purple
但结果是:
<script type="text/javascript">
jQuery(document).ready(function(){
var month = new Date().getMonth()+1;
if(month >=2 && month <=4){
jQuery('.off-season-hours .mbhi-is-current').removeClass('mbhi-is-current');
}else{
jQuery('.on-season-hours .mbhi-is-current').removeClass('mbhi-is-current');
}
});
</script>
怎么可能只采用每一行的第二和第三部分?
由于
答案 0 :(得分:4)
你可能想要
with open('test.txt', 'r') as file1, open('output.txt', 'w') as file2:
for line in file1:
file2.write(".".join(line.split('.')[1:3])+ '\n')
将split('.')
应用于该行时,例如yellow.blue.purple.green
,您会得到一个值列表
["yellow", "blue", "purple", "green"]
通过切片[1:3]
,您可以获得第二项和第三项。
答案 1 :(得分:0)
首先,我创建了一个.txt文件,该文件与您在原始.txt文件中输入的数据相同。我用的是&#39; w&#39;模式来编写您已经知道的数据。我创建了一个空列表,我们将用它来存储数据,然后写入output.txt文件。
output_write = []
with open('test.txt', 'w') as file_object:
file_object.write('yellow.' + 'blue.' + 'purple.' + 'green')
file_object.write('\nred.' + 'blue.' + 'red.' + 'purple')
接下来,我打开了我创建并使用的文本文件&#39; r&#39;正如您所知,模式可以读取文件中的数据。为了获得你想要的输出,我在for循环中读取文件的每一行,并且对于每一行我分割该行以创建该行中的项目列表。我根据每个项目之间的时间段分割它们(&#39;。&#39;)。接下来你想得到行中的第二和第三项,所以我创建了一个存储索引[1]和索引[2]的变量,名为new_read。在我们将拥有您想要的两个数据之后,您可能希望写入输出文件。我将此数据存储在名为output_data的变量中。最后,我将输出数据附加到我们之前创建的空列表中。
with open ('test.txt', 'r') as file_object:
for line in file_object:
read = line.split('.')
new_read = read[1:3]
output_data = (new_read[0] + '.' + new_read[1])
output_write.append(output_data)
最后,我们可以将此数据写入名为&#39; output.txt&#39;的文件中。如前所述。
with open('output.txt', 'w') as file_object:
file_object.write(output_write[0])
file_object.write('\n' + output_write[1])
print(output_write[0])
print(output_write[1])
最后我打印数据只是为了检查输出:
blue.purple
blue.red