IOError:[Errno 2]没有这样的文件或目录:'ux_source_2850.txt

时间:2013-08-28 22:37:44

标签: python

我正在尝试使用此python代码将文件转换为另一种格式,这需要三个参数输入文件,输出文件和百分比值。我在shell脚本中调用python函数,它第一次工作正常,但第二次不起作用。错误是“IOError:[Errno 2]没有这样的文件或目录:'ux_source_2850.txt”。但我很确定这个文件在这个目录中。有人可以帮帮我吗。 另外,我想知道是否有另一种方法来调用python函数,就像编译的c函数一样,所以我可以和几个参数一起执行该函数。

#!/usr/bin/env python
def convertfile(file1,file2,percentage): 
  with open(file1, "r+") as infile, open(file2, "w+") as outfile:
    outfile.write('lon lat Ve Vn Se Sn Cen Site Ref\n')
    for line in infile.readlines():
      line = line.strip()
      new_line=line + " "+percentage+" "+percentage+" "+'0.05 stat(0,0) test1'+'\n'
      outfile.write(new_line)
file1=raw_input()                                                              
file2=raw_input()                                                              
percentage=raw_input()                                                         
convertfile(file1,file2,percentage)

#!/bin/bash
infile1=ux_source_$j.txt                                                       
outfile1=ux_$j.txt                                                             
percentage1=`sort biggest_z_amp  | tail -1 | awk '{print $1*2e4}'`             
../convertfile.py<<!                                                           
$infile1                                                                       
$outfile1                                                                      
$percentage1                                                                   
!                                                                              
infile2=uy_source_$j.txt                                                       
outfile2=uy_$j.txt                                                             
../convertfile.py<<!                                                           
$infile2                                                                       
$outfile2                                                                      
$percentage1                                                                   
!              

1 个答案:

答案 0 :(得分:1)

可能是您的问题出现在shell脚本中,而不是Python脚本中。确保在作为Python脚本输入的行中没有尾随空格。

更好的是,使用:

file1 = raw_input().strip()
file2 = raw_input().strip()