2017-08-21 7 views
-2
API関数 psspy.two_winding_chg_4は、その関数(配列の3番目の要素)の下に示すように、一重引用符を使用して入力する必要があります。 excel sheet 2 CSVシートから読み取るときに整数エラーが発生します。それは私に最後の列を読んでいる問題を与える。私は最後の列のtheresの文字を知っているが、どのように私は文字として digitを定義するのですか?
Traceback (most recent call last): 
File "C:\Users\RoszkowskiM\Desktop\win4.py", line 133, in <module> 
psspy.two_winding_chng_4(from_,to,'%s'%digit,[_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i],[_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f, max_value, min_value,_f,_f,_f],[]) 
File ".\psspy.py", line 25578, in two_winding_chng_4 
TypeError: an integer is required 
ValueError: invalid literal for int() with base 10: 'T1' 

for row in data: 
    data_location, year_link, from_, to, min_value,max_value,name2,tla_2,digit = row[5:14] 
    output = 'From Bus #: {}\tTo Bus #: {}\tVMAX: {} pu\tVMIN: {} pu\t' 
    if year_link == year and data_location == location and tla_2==location: 
     from_=int(from_) 
     to=int(to) 
     min_value=float(min_value) 
     max_value=float(max_value) 
     digit=int(digit) 
     print(output.format(from_, to, max_value, min_value)) 
     _i=psspy.getdefaultint() 
     _f=psspy.getdefaultreal() 
     psspy.two_winding_chng_4(from_,to,'%s'%digit,[_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i,_i],[_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f,_f, max_value, min_value,_f,_f,_f],[]) 

答えて

0

私は内部的に使用しているものpsspy.two_winding_chng_4()を確認していません。

  1. あなたが最後の列に一致するように(R '[A-ZA-Z] [0-9]' のように)正規表現を指定することができる場合。

  2. もう1つのオプションは、文字列として読み取り、後でそのデータから詳細を抽出することです。

オプション1は、より再利用可能で堅牢なものにするために推奨されます。 psspy.two_winding_chng_4()機能。 psspyはサードパーティライブラリのように見えるので、オプション2をお勧めします。

+0

どうすればいいですか? – Mark

+0

psspy.pyの標準ライブラリですか? –

+0

http://www.whit.com.au/blog/python-libraries-for-psse-python-training/ここに、psspyのライブラリへのリンク – Mark

関連する問題