用于复制列的Python脚本

时间:2016-04-02 00:13:27

标签: python if-statement for-loop

这似乎是一个简单的问题,但我无法找到答案。

输入:

a 3 4
b 1 4
c 8 3
d 3 8 

通缉输出:

a a 3 4 
b b 1 4 
c c 8 3
d d 3 8 

注意:文件.txt输入在第一列中有许多行。

4 个答案:

答案 0 :(得分:2)

你没有要求它,但你想要awk吗?你可以这样做:

awk '{$1=$1 OFS $1}1' Input

或更明显但不太灵活:

awk '{print $1 $1 $2 $3}' Input

答案 1 :(得分:0)

假设您已在数组中读取结果,则需要:

values = ["a",1,2,3]
values.insert(0,values[0])

这将在0位插入索引0的值(在本例中为#34; a"),将值的所有其他内容移动到右侧。

这也适用于字符串,所以如果您的结果被读作字符串,您可以执行以下操作 - 请注意我在每个数字后面包含空格并且执行方式有点不同:

values="a 1 2 3"
values = values[:2] + values

在此示例中,我们采用前两个数组成员(values[:2]values[0:2])并将现有数组值添加到结尾。

希望这有帮助!

答案 2 :(得分:0)

with open("sample.csv") as inputs:
    for line in inputs:
        trimed_line = line.strip() 
        parts = trimed_line.split()
        print("{0} {1}".format(parts[0], trimed_line))


output:
a a 3 4
b b 1 4
c c 8 3
d d 3 8

答案 3 :(得分:0)

试试这个:

fin = open("text.txt")
content = fin.readlines()
fin.close()
for elem in content:
    print(elem[0],elem[0]+elem[1:-1])

<强>输出:

a a 3 4
b b 1 4
c c 8 3
d d 3 8