ファイルオブジェクト名 = open(ファイルパス,モード) ex) fopen=open('sample1.csv', 'rt')
r: | 読み取り操作。 |
w: | 書き出し操作。ファイルが存在しない場合新しいファイルが作成され、存在する場合は、内容が上書きされます。 |
x: | 書き出し操作。ファイルが存在しない場合に指定します。 |
a: | 書き出し操作。ファイルが存在し、その末尾に追記する場合に指定します。 |
t: | テキストファイルであることを指定します。 |
b: | バイナリファイルであることを指定します。 |
ファイルオブジェクト名.close() ex) fopen.close
#File Open getFN='sample1.csv' fopen=open(getFN,"rt") #File Read readData=fopen.read() #File Close fopen.close #確認用 print (readData)
X1,X2,X3,X4,X5,X6,X7,X8 3.00E-03,-3.70E-02,1.30E+00,-1.70E+01,1.54E-04,2.82E+02,1.90E-03,3.00E+02 3.00E-03,-3.60E-02,1.00E-01,-1.70E+01,1.42E-04,2.81E+02,2.40E-03,3.00E+02 3.00E-03,-3.60E-02,1.20E-01,-1.70E+01,1.48E-04,2.81E+02,1.70E-02,3.00E+02 3.00E-03,-3.50E-02,-9.50E-01,-1.60E+01,1.20E-04,2.77E+02,1.20E-02,3.00E+02 3.00E-03,-3.40E-02,-1.10E-01,-1.50E+01,1.05E-04,2.75E+02,5.60E-03,3.00E+02 ・・・
#File Open getFN='sample1.csv' fopen=open(getFN,"rt") #File Read readData='' #変数準備 for line in fopen: readData+=line #File Close fopen.close #確認用 print (readData)
X1,X2,X3,X4,X5,X6,X7,X8 3.00E-03,-3.70E-02,1.30E+00,-1.70E+01,1.54E-04,2.82E+02,1.90E-03,3.00E+02 3.00E-03,-3.60E-02,1.00E-01,-1.70E+01,1.42E-04,2.81E+02,2.40E-03,3.00E+02 3.00E-03,-3.60E-02,1.20E-01,-1.70E+01,1.48E-04,2.81E+02,1.70E-02,3.00E+02 3.00E-03,-3.50E-02,-9.50E-01,-1.60E+01,1.20E-04,2.77E+02,1.20E-02,3.00E+02 3.00E-03,-3.40E-02,-1.10E-01,-1.50E+01,1.05E-04,2.75E+02,5.60E-03,3.00E+02 ・・・
#File Read readData=[] for line in fopen: readData.append(line)
['X1,X2,X3,X4,X5,X6,X7,X8\n', '3.00E-03,-3.70E-02,1.30E+00,-1.70E+01,1.54E-04,2.82E+02,1.90E-03,3.00E+02\n', '3.00E-03,-3.60E-02,1.00E-01,-1.70E+01,1.42E-04,2.81E+02,2.40E-03,3.00E+02\n', ・・・
#File Open getFN='sample1.csv' fopen=open(getFN,"rt") #File Read readData=fopen.readlines() #File Close fopen.close print (readData)
['X1,X2,X3,X4,X5,X6,X7,X8\n', '3.00E-03,-3.70E-02,1.30E+00,-1.70E+01,1.54E-04,2.82E+02,1.90E-03,3.00E+02\n', '3.00E-03,-3.60E-02,1.00E-01,-1.70E+01,1.42E-04,2.81E+02,2.40E-03,3.00E+02\n', ・・・
getFN='sample1.csv' readData='' with open(getFN,"rt") as fopen: for line in fopen: readData+=line print (readData)
#データ取得 getFN='sample1.csv' fopen=open(getFN,"rt") readData=fopen.read() fopen.close #copy.csvに出力 fout=open('copy.csv','wt') fout.write(readData) fout.close #copy.csvに追加出力 fout=open('copy.csv','at') fout.write(readData) fout.close
#copy.csvに出力 fout=open('copy.csv','wt') print (readData,file='copy.csv') fout.close #または with open('copy.csv','wt') as fout: print (readData,file='copy.csv')
sep | セパレータ。デフォルトではスペース(' 'または\s)が設定されます。 |
end | 末尾の文字列。デフォルトでは改行('\n')が設定されます。 |
import csv getFN='sample1.csv' with open(getFN,"rt") as fopen: csvData=csv.reader(fopen) readData=[] for line in csvData: readData.append(line) print (readData)
[['X1', 'X2', 'X3', 'X4', 'X5', 'X6', 'X7', 'X8'], ['3.00E-03', '-3.70E-02', '1.30E+00', '-1.70E+01', '1.54E-04', '2.82E+02', '1.90E-03', '3.00E+02'], ['3.00E-03', '-3.60E-02', '1.00E-01', '-1.70E+01', '1.42E-04', '2.81E+02', '2.40E-03', '3.00E+02'], ・・・
import csv fdName=['X1','X2','X3','X4','X5','X6','X7','X8'] getFN='sample1.csv' with open(getFN,"rt") as fopen: csvData=csv.DictReader(fopen,fieldnames=fdName) cnt1=0 readData=[] for line in csvData: #二行目以降データ取得 if cnt1>0: readData.append(line) else: cnt1+=1 print (readData)
[{'X6': '2.82E+02', 'X7': '1.90E-03', 'X5': '1.54E-04', 'X2': '-3.70E-02', 'X4': '-1.70E+01', 'X3': '1.30E+00', 'X1': '3.00E-03', 'X8': '3.00E+02'}, {'X6': '2.81E+02', 'X7': '2.40E-03', 'X5': '1.42E-04', 'X2': '-3.60E-02', 'X4': '-1.70E+01', 'X3': '1.00E-01', 'X1': '3.00E-03', 'X8': '3.00E+02'}, {'X6': '2.81E+02', 'X7': '1.70E-02', 'X5': '1.48E-04', 'X2': '-3.60E-02', 'X4': '-1.70E+01', 'X3': '1.20E-01', 'X1': '3.00E-03', 'X8': '3.00E+02'}, ・・・
import csv getFN='sample1.csv' with open(getFN,"rt") as fopen: csvData=csv.reader(fopen) readData=[] for line in csvData: readData.append(line) #X2,X4,X6のみ残す delNo=[7,6,4,2,0] tmp=[] for line in readData: for cnt1 in delNo: del line[cnt1] tmp.append(line) readData=tmp #ファイル出力 with open('resdata.csv','wt') as fout: csvout=csv.writer(fout, lineterminator='\n') csvout.writerows(readData)