ファイルオブジェクト名 = 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)