Python编写具有多行的范围循环

Python编写具有多行的范围循环,python,Python,我正在尝试编写一个脚本,根据 循环中的范围,即nums=range(1750117570)。因此,在每一次增量中,第二列中的所有值将增量到17202,然后17203等,剩下的保持不变,有什么建议吗 数据已经在文件中,所以我需要某种形式的读取,然后写入输出,这可能吗 x1E 17201 18 0 1 0 0 1 x2E 17201 19 0 1 0 0 1 x3E 17201 20 0 1 0 0 1 x4E 17201 21

我正在尝试编写一个脚本,根据 循环中的范围,即
nums=range(1750117570)
。因此,在每一次增量中,第二列中的所有值将
增量到17202,然后17203
等,剩下的保持不变,有什么建议吗

数据已经在文件中,所以我需要某种形式的
读取
,然后
写入
输出,这可能吗

x1E 17201   18  0   1   0   0   1
x2E 17201   19  0   1   0   0   1
x3E 17201   20  0   1   0   0   1
x4E 17201   21  0   1   0   0   1
x5E 17201   22  0   1   0   0   1
x6X 17201   23  0   1   0   0   1
x7X 17201   24  0   1   0   0   1
x8X 17201   25  0   1   0   0   1
x9X 17201   26  0   1   0   0   1
10X 17201   27  0   1   0   0   1
11X 17201   28  0   1   0   0   1
12X 17201   29  0   1   0   0   1
13X 17201   30  0   1   0   0   1
14X 17201   31  0   1   0   0   1
15X 17201   32  0   1   0   0   1
16X 17201   33  0   1   0   0   1
20X 17201   34  0   1   0   0   1
17X 17201   35  0   1   0   0   1
18X 17201   36  0   1   0   0   1
19X 17201   37  0   1   0   0   1
多亏了ROCKLY LI,我才有了这个工作。唯一的问题是,它需要按照上面的第3列进行数字排序,如何对文件中写入的输出进行排序

nums = range(17201,17920)

with open('Orig.txt', 'r') as fin:
     with open('PLF.txt', 'w') as fout:
         for line in fin.readlines():
             line = line.split()

             #if 17200 < int(line[1]) < 17920:

             #print(line)
             for i in range(0, len(nums),):
                 line[1] = int(line[1]) + 1
                  #line.append(str(line[1] + 1))
                 line = [str(e) for e in line] # Fix type
                 print(line)
                 #fout.write(' '.join(line) + '\n')
                 fout.write(' '.join(line) + '\n')
nums=范围(1720117920)
以open('Orig.txt','r')作为fin:
以open('PLF.txt','w')作为fout:
对于fin.readlines()中的行:
line=line.split()
#如果17200
我认为,与其就地编辑文件,不如生成一个新文件并保留旧文件更为合理,而且使用
熊猫

import pandas as pd

df = pd.read_table('your_file.txt', header=None, delim_whitespace=True)
df[1] = df.apply(lambda x: x[1] + 1 if 17501 <= x[1] < 17570 else x[1])
df.to_csv('new_file.txt', sep=' ')
将熊猫作为pd导入
df=pd.read\u table('your\u file.txt',header=None,delim\u whitespace=True)

df[1]=df.apply(lambda x:x[1]+1,如果17501你说的是column,那么它是以什么方式表示的?一个csv?你为什么要循环?
df['second']=range(1750117570)
?嗨,它将在一个文本文件中,向我们展示你的错误代码,我们可能会提供帮助。因此,不需要为你编码,我们只是帮助你修复它-maybe.nums=range(1750117570)f=open('test.txt','w'),open('test.txt','w')作为f:for范围内的i(0,len(nums)):f.write(“+str(nums[i])+”\n”)非常有趣,但我无法导入pandas的“没有名为pandas的模块”错误。有替代方法吗?使用
pip安装pandas
不允许我安装(管理问题)当然有一个基本的(即不需要导入)解决方案,你知道了。我对数字很懒惰-自己检查一下。尽管存在文件“FileNotFoundError:[Errno 2]没有这样的文件或目录:'testplfer.txt',但仍会出现此错误
with open('your_file.txt', 'r') as fin:
     with open('new_file.txt', 'w') as fout:
          for line in fin.readlines():
              line = line.split()
              if 17000 < int(line[1]) < 18000:
                  line[1] = int(line[1]) + 1
              line = [str(e) for e in line] # Fix type
              fout.write(' '.join(line) + '\n')