Python:在文本文件上剪切和粘贴数据。

时间:2011-01-31 18:31:40

标签: python

我有一个包含数字的文本文件。

我需要以正确的顺序将一些数字从文件开头移到最后。

例如,原始TEXT文件包含以下内容:0123456789

我需要以相同的顺序将前4个数字移到最后,所以它看起来像这样:

4567890123.

不幸的是我不知道如何用Python做到这一点, 我甚至不知道从哪里开始。

任何有关解决此问题的建议都将受到高度赞赏。

2 个答案:

答案 0 :(得分:5)

请参阅Python教程(section "Strings";搜索“切片表示法”):

>>> a = "0123456789"
>>> b = a[4:] + a[:4]
>>> b
'4567890123'

或者你真正想做的是什么?

答案 1 :(得分:4)

可以通过a = '0123456789'访问字符串a[i]的各个字符,其中i=0您获得第一个位置的字符(索引从0开始编号),因此{{ 1}}。您还可以在'0'格式中一次提取多个字符,其中a[i:j]是第一个字符的位置,i是字符在最后一个字符后面的位置。如果省略ji中的一个,则会从字符串的开头或结尾处取所有字符。

所以:

j

因此前4个字符为a[0] = a[0:1] = a[:1] = '0' a[1] = a[1:2] = '1' a[4] = a[4:5] = '4' a[0:3] = a[:3] = '012' a[3:5] = '34' a[4:] = '456789' ,其余为a[:4]。现在你将它们连接在一起:

a[4:]

它会返回

a[4:] + a[:4]

为了读取文件,您必须在读取模式下打开它并使用第一行,剥离任何空格/换行符:

'4567890123'