简体   繁体   中英

reading python file and using input

hi as part of my code i need to read a python file but i keep on getting an error:

other options:    {'input': 'dutch_training.txt\nenglish_training.txt\ndutch1.txt\ndutch_training.txt\nenglish_training.txt\ndutch_1.txt\n3\n.4\ndutch_training.txt\nenglish_training.txt\nenglish_1.txt\n4\n.3\ndutch_training.txt\nenglish_training.txt\ndutch_2.txt\n8\n.3\nabc\ndef\nexit\n'}
FileNotFoundError(2, 'No such file or directory')
result_code classify_unknown_text_cut   testingFailed   1

i serached google and found that i can use:

os.path.abspath

this is my code:

def classify_unknown_text():
    a=1
    while a==1:

       file_1=os.path.abspath(input("Please enter the filename for language 1: "))
       file_2=os.path.abspath(input("Please enter the filename for language 2: "))
       clssify_file=os.path.abspath(input("Please enter the filename to classify: "))
       if clssify_file=="exit":
           a+=1
           return
       if os.path.isfile(file_1)==False or os.path.isfile(file_2)==False or os.path.isfile(clssify_file)==False:
            print("File error: some files do not exist.")

       else:
          max_length_ngram_1=int(input("Please enter the maximal length of the n-gram: "))
          threshold_1=float(input("Please enter threshold value between 0 and 0.5: "))
          file_for_dict1=open(file_1,"r")
          file_for_dict2=open(file_2,"r")
          file3_text=open(clssify_file,"r")
          text_dict_1=file_for_dict1.read()
          text_dic_2=file_for_dict2.read()
          text=file3_text.read()

          dict1=compute_ngrams_frequency(text_dict_1,max_length_ngram_1)
          dict2=compute_ngrams_frequency(text_dic_2,max_length_ngram_1)
          result=classify_language(text,dict1,dict2,threshold_1)
          if result==1:
             print("I believe the text matches the language in"+file_1)
          if result==2:
             print("I believe the text matches the language in"+file_2)

          if result==0:
             print("Sorry, I could not figure this one out!")
             #classify_unknown_text()

but i still keep on getting the same error and o dont know what ellse can i do? thank you

If I'm not wrong, os.path.abspath only returns the absolute path in which your file is stored. If you wish to open a file and read it, or even write it, you could do the following:

#Opens file in read mode
file = open("/path/to/your/file", 'r')

If you want to determine the extension of the file to assure only.py files are read, then you could do:

import os

file_extension = os.path.splitext('/path/to/file')[1]

#Check for extension
if(file_extension == '.py'):
    file_open = open('/path/to/file')

Don't know if I helped but I hope so!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM