csvファイルから作成されたリストに基づいて、あるディレクトリから別のディレクトリにファイルをコピーしようとしています。今私はいくつかの列を持っているcsvファイルを持っているが、私は必要な一つの列を抽出し、 'imaglst'の下でそれを保存することができた。
リストは、画像 '.tif'拡張子のリストです。私は入力フォルダ(すべての画像と余分なもの)と出力フォルダ(ここでは 'imaglst'で指定された画像をコピーしたい)を持っています。csvファイルから作成されたリストに基づいてあるディレクトリから別のディレクトリにファイルをコピーする
は、現在のコードです:
import os
import glob
import pandas
import shutil
cwd = os.getcwd()
path = cwd
extension = 'csv'
result = [i for i in glob.glob('*.{}'.format(extension))]
print result
colnames = ['X' ,'Y' ,'ATTR_1',' ATTR_2',' ATTR_3 ','ATTR_4' ,'ELEVATION']
data = pandas.read_csv(result[0],names=colnames, delimiter=r"\s+")
imaglst = data['ATTR_1']
print imaglst[1:len(imaglst)]
dir_src = raw_input('enter the full image folder location :')
dir_dst = raw_input('enter the full output folder location :')
for i in imaglst[1:len(imaglst)]:
for filename in imaglst.filter(os.listdir(dir_src), imaglst[i]):
shutil.copy(dir_src, dir_dst)
print "---------------------------------------------------------------------------------"
print "Process competed"
それは私が
print imaglst[1:len(imaglst)]
1 17251_0002_RGB
2 17251_0004_RGB
3 17251_0006_RGB
4 17251_0008_RGB
5 17251_0010_RGB
6 17251_0012_RGB
7 17251_0014_RGB
8 17251_0016_RGB
9 17251_0018_RGB
10 17251_0020_RGB
11 17251_0022_RGB
12 17251_0024_RGB
13 17251_0026_RGB
14 17251_0028_RGB
15 17251_0030_RGB
16 17251_0032_RGB
17 17251_0034_RGB
18 17251_0036_RGB
19 17251_0038_RGB
20 17251_0040_RGB
21 17251_0042_RGB
22 17251_0044_RGB
23 17251_0046_RGB
24 17251_0048_RGB
25 17251_0050_RGB
26 17251_0052_RGB
27 17251_0054_RGB
28 17251_0056_RGB
29 17251_0058_RGB
30 17251_0060_RGB
206 17005_0114_RGB
207 17005_0116_RGB
208 17005_0118_RGB
209 17005_0120_RGB
210 17005_0122_RGB
211 17005_0124_RGB
212 17005_0126_RGB
213 17005_0128_RGB
214 17005_0130_RGB
215 17005_0132_RGB
216 17005_0134_RGB
217 17005_0136_RGB
218 17005_0138_RGB
219 17005_0140_RGB
220 17005_0142_RGB
221 17005_0144_RGB
222 17005_0146_RGB
223 17005_0148_RGB
224 17005_0150_RGB
225 17005_0152_RGB
226 17005_0154_RGB
227 17005_0156_RGB
228 17005_0158_RGB
229 17005_0160_RGB
230 17005_0162_RGB
231 17005_0164_RGB
232 17005_0166_RGB
233 17005_0168_RGB
234 17005_0170_RGB
235 17005_0172_RGB
を印刷するとき今、私は私が何かをしないのですが、ただ何を知らない、あらゆることを知って節約リストアドバイスや回避策が評価されます。私はそれを実行すると、私はエラー、次の取得:
KeyError: '17251_0002_RGB'
だから、私は拡張子「.tifファイルを」拾っていない可能性がありますが、私は確認していないことをそれを理解できるもの。
のおかげで、これはまだファイルをコピーしますか?私はちょうど結果を見るためにあなたのスクリプトを試してみました。 "TypeError:キーワード引数' items'、 'like'、または' regex'は相互に排他的です。そのアイデアは、リストを通って "dir_src"から同じ名前のイメージを見つけ、 "dir_src"からそれらをコピーし、それらを指定される "dir_dst"に貼り付けることです。 –
完全なトレースバックを投稿する必要があります。それは残念なことに何も知らないパンダとの間違いのようです。 –
トレースバック(最新の呼び出しの最後): ':/ドキュメント/ RD/Height_teamプロジェクト/ image_locator_copier.py J'、WDIR = RUNFILE(中 ファイル ""、1行目、 'J:/ Documents/RD/Height_team project') ファイルC:¥Users¥edwinp¥AppData¥Local¥Continuum¥Anaconda2¥lib¥site-packages¥spyder¥utils¥site¥sitecustomize.py、880行、実行ファイル内 execfile(ファイル名、名前空間) ファイル "C:¥Users¥edwinp¥AppData¥Local¥Continuum¥Anaconda2¥lib¥site-packages¥spyder¥utils¥site¥sitecustomize.py"、87行目ファイル "J:/ Documents/RD/Height_team project/image_locator_copier.py"、 exec(コンパイル(scripttext、ファイル名、 'exec')、glob、loc) –