Python 如何通过读取文件的标题输入来生成重复的标题模式?

Python 如何通过读取文件的标题输入来生成重复的标题模式?,python,if-statement,for-loop,join,append,Python,If Statement,For Loop,Join,Append,假设我有一个具有以下唯一标题线的文件 块值Alfa Beta Gamma 我想在读取此文件后创建一个表头**问题在于,从Alfa开始的列数表示样本。因此,在读取此类不同文件时,可能会有任意数量的样本。** 其他文件的标题可能为: 块值Alfa Beta Gamma Delta Theta 使用以下脚本: my_file = open('data.txt', 'r') for lines in my_file.read().split('\n'): header = lines.split

假设我有一个具有以下唯一标题线的文件

块值Alfa Beta Gamma

我想在读取此文件后创建一个表头**问题在于,从
Alfa
开始的列数表示样本。因此,在读取此类不同文件时,可能会有任意数量的样本。**

其他文件的标题可能为:

块值Alfa Beta Gamma Delta Theta

使用以下脚本:

my_file = open('data.txt', 'r')
for lines in my_file.read().split('\n'):
    header = lines.split('\t')
    sample = header[2::]
    with open("new_file.txt", "w") as output:
        output.write("block\t" + '\t'.join(sample))
        output.close()
当我将标题输入为:

块值Alfa Beta Gamma

我得到的标题输出如下:

block Alfa-Beta-Gamma

但是,我希望我的输出标题为:

my_file = open('data.txt', 'r')
for lines in my_file.read().split('\n'):
    header = lines.split('\t')
    sample = header[2::]
    with open("new_file.txt", "w") as output:
        output.write("block\t" + '\t'.join(sample))
        output.close()
块值αaαbβaβbγaγb

So/并且,如果任何其他输入文件的头中有5个样本,我希望头输出为:

my_file = open('data.txt', 'r')
for lines in my_file.read().split('\n'):
    header = lines.split('\t')
    sample = header[2::]
    with open("new_file.txt", "w") as output:
        output.write("block\t" + '\t'.join(sample))
        output.close()
标题输入:

块值Alfa Beta Gamma Delta Theta

标题输出:

块值αaαbβaβbγaγbδaδbθb

因此,脚本应该能够为输入文件中的每个样本生成此格式(模式)的头。

任何其他解决方案,我们将不胜感激


谢谢,

这里有一个代码片段(我认为)可以满足您的需要:

input_lines = ["block   values    Alfa    Beta    Gamma", "block   values    Alfa    Beta   Gamma   Delta    Theta"]

for input_line in input_lines:
    header = input_line.split()
    new_header = header[:2]
    for head in header[2:]:
        new_header.append(head + "_a")
        new_header.append(head + "_b")
    print("\t".join(new_header))