2014-08-30 85 views
3
def choose_option(self): 
     if self.option_picker.currentRow() == 0: 
      description = open(":/description_files/program_description.txt","r") 
      self.information_shower.setText(description.read()) 
     elif self.option_picker.currentRow() == 1: 
      requirements = open(":/description_files/requirements_for_client_data.txt", "r") 
      self.information_shower.setText(requirements.read()) 
     elif self.option_picker.currentRow() == 2: 
      menus = open(":/description_files/menus.txt", "r") 
      self.information_shower.setText(menus.read()) 

我使用的資源文件和事情錯了,當我使用它在open函數的參數,但是當我使用它的加載圖片和圖標一切都很好。OSERROR [錯誤22]無效的參數時,使用open()在Python

回答

4

這不是一個有效的文件路徑。您必須使用全路徑

open(r"C:/description_files/program_description.txt","r") 

或相對路徑

open("program_description.txt","r") 
2

你應該添加一個「/」中的最後一個「/」,例如路徑: 開放(「C: \'Python34 \ book.csv')打開('C:\ Python34 \ book.csv')

import csv 
with open('C:\Python34\\book.csv', newline='') as csvfile: 
    spamreader = csv.reader(csvfile, delimiter='', quotechar='|') 
    for row in spamreader: 
     print(row) 
+1

歡迎來到Stack Overflow!雖然這可能會在理論上回答這個問題,[這將是更可取的](// meta.stackoverflow.com/q/8259)在這裏包括答案的基本部分,並提供參考鏈接。 – manetsus 2016-01-05 16:14:49

+3

這個答案有一組問題: 1)'open('C:\ Python34 \ book.csv')'打開('C:\ Python34 \ book.csv')' - >沒有區別在兩條線之間。你是否打開('C:\\ Python34 \\ book.csv')'打開('C:\\ Python34 \\ book.csv')'? 2)示例中和第一行中的代碼都是錯誤的,因爲您不是逃避反斜槓(或者,在您的示例中,它們全部都是。) C:\ Python34 \\ book .csv''應該是''C:\\ Python34 \\ book.csv''或'r'C:\ Python34 \ book.csv'' – GPhilo 2017-05-31 09:41:08

相關問題