2017-11-15 16 views
0

拡張子を取得せずにディレクトリにファイル名を取得しようとしています。私は出力がより多くのように見えるようにしたいしかし拡張子のないディレクトリにファイル名を取得する - Python

['img_8111.jpg', 'img_8120.jpg', 'img_8127.jpg', 'img_8128.jpg', 'img_8129.jpg', 'img_8130.jpg'] 

: - 私の現在のコードで

import os 

path = '/Users/vivek/Desktop/buffer/xmlTest/' 
files = os.listdir(path) 
print (files) 

私はそうのような出力で終わる

私が作ることができますどのように
['img_8111', 'img_8120', 'img_8127', 'img_8128', 'img_8129', 'img_8130'] 

これが起こる?

+0

はそれらをスライスして...です。 –

答えて

2

osのsplitextを使用できます。

import os 

path = '/Users/vivek/Desktop/buffer/xmlTest/' 
files = [os.path.splitext(filename)[0] for filename in os.listdir(path)] 
print (files) 

ちょうどヘッドアップ:basenameはこのためには機能しません。 basenameは、内線番号を削除しません。ここで

0

には、2つのオプション

import os 
print(os.path.splitext("path_to_file")[0]) 

それとも

from os.path import basename 
print(basename("https://stackoverflow.com/a/b/c.txt")) 
関連する問題