卒研でPythonを使用するのですが、参考書のサンプルコードが正常に動かず困っています。
Python
1import sys, os 2sys.path.append('../') # 一つ上のフォルダから探せるようにする 3from my.Cons import Cons # 連結リストを使う 4 5def fun1(dat): # 手続き型(繰り返し構造) 6 a = [] 7 for x in dat: 8 p = x / 7 * 100 # 100点換算 9 if p >= 50: # 50点以上を抽出 10 a.append(str(round(p, 1))) # 四捨五入と文字列化 11 a = ';'.join(a) # ;で結合 12 return a 13 14def fun2(dat): # 手続き型(内包表記) 15 a = [x / 7 * 100 for x in dat] # 100点換算 16 a = [x for x in a if x >= 50] # 50点以上を抽出 17 a = [str(round(x, 1)) for x in a] # 四捨五入と文字列化 18 a = ';'.join(a) # ;で結合 19 return a 20 21def fun3(dat): # 関数型(関数呼び出しの入れ子) 22 return ';'.join( # ;で結合 23 map(lambda x: str(round(x, 1)), # 四捨五入と文字列化 24 filter(lambda x: x >= 50, # 50点以上を抽出 25 map(lambda x: x / 7 * 100, dat)))) # 100点換算 26 27def fun4(dat): # 関数型+オブジェクト指向(メソッドチェーン) 28 return (dat.map(lambda x: x / 7 * 100) # 100点換算 29 .filter(lambda x: x >= 50) # 50点以上を抽出 30 .map(lambda x: str(round(x, 1))) # 四捨五入と文字列化 31 .join(";")) # ;で結合 32 33if __name__ == '__main__': 34 d = [5, 3, 6, 7, 2] # 正解数のデータ(全7問) 35 print(fun1(d)) 36 print(fun2(d)) 37 print(fun3(d)) 38 d = Cons.of(5, 3, 6, 7, 2) # 連結リスト(Consリスト)で用意 39 print(fun4(d)) 40
コードは上記のもので、エラー文は> File "Functional.py", line 2
SyntaxError: Non-ASCII character '\xe4' in file Functional.py on line 2, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
です。解決していただきたくご教授お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。