2017-09-22 15 views
0

パスを使って.txt拡張子ファイルを取得して一覧表示するpythonスクリプトを作成していますので、ユーザーは各ファイルに割り当てられた番号、彼が開こうとしているファイルとそのプログラムはそれを開き、それを読む必要があります。Pythonでユーザーが選択したファイルを開いて読み込みます

既に.txt拡張子ファイルを取得して一覧表示するスクリプトがありますが、表示されるエラーは、ユーザーが選択したファイルを受け取らないということです。

import os 

mi_ruta = os.getcwd() 
archivos = os.listdir(mi_ruta) 

cont = 0 

for i in range(len(archivos)): 
    if (archivos[i][-3:] == 'txt') or (archivos[i][-3:] == 'csv'): 
     print(i,archivos[i]) 
     cont = cont + 1 

n = -1 
while n >= len(archivos) or n < 0: 
    print("Ingrese un valor entre",0,"y" , cont-1) 
    try: 
     n = int(input("Digite el número del archivo que quiere abrir: ")) 
    except: 
     print("Ingrese valor numerico") 

print("El archivo selecionado es: ",archivos[n]) 
file = open("m", "r") 
file.close() 
+0

試し 'ファイル=オープン(archivos [n]は、 "R")' – Anona112

答えて

1
file = open(archivos[n]), "r”) 
print(file.read()) # if you want to see it 

そして、もう一つの問題:他のファイル(の.py、PDFファイル)がある場合は、それは例えば、それはより大きな数字を選択することはできませんと言われます:

5 alph.txt 
10 data.txt 

私は10のファイルを持っていますが、2つだけ.txtファイル。

print("Ingrese un valor entre",0,"y" , cont-1) 

それは“entre 0 y 2”言いますが、それは私がどうなる5および10で動作します:

print("Ingrese un valor entre", 0, "y" , len(archivas)-1) 
関連する問題