Python
1# -*- coding: utf-8 -*- 2import sys, os 3sys.path.append('../') # 一つ上のフォルダから探せるようにする 4from my.Cons import Cons # 連結リストを使う 5 6def fun1(dat): # 手続き型(繰り返し構造) 7 a = [] 8 for x in dat: 9 p = x / 7 * 100 # 100点換算 10 if p >= 50: # 50点以上を抽出 11 a.append(str(round(p, 1))) # 四捨五入と文字列化 12 a = ';'.join(a) # ;で結合 13 return a 14 15def fun2(dat): # 手続き型(内包表記) 16 a = [x / 7 * 100 for x in dat] # 100点換算 17 a = [x for x in a if x >= 50] # 50点以上を抽出 18 a = [str(round(x, 1)) for x in a] # 四捨五入と文字列化 19 a = ';'.join(a) # ;で結合 20 return a 21 22def fun3(dat): # 関数型(関数呼び出しの入れ子) 23 return ';'.join( # ;で結合 24 map(lambda x: str(round(x, 1)), # 四捨五入と文字列化 25 filter(lambda x: x >= 50, # 50点以上を抽出 26 map(lambda x: x / 7 * 100, dat)))) # 100点換算 27 28def fun4(dat): # 関数型+オブジェクト指向(メソッドチェーン) 29 return (dat.map(lambda x: x / 7 * 100) # 100点換算 30 .filter(lambda x: x >= 50) # 50点以上を抽出 31 .map(lambda x: str(round(x, 1))) # 四捨五入と文字列化 32 .join(";")) # ;で結合 33 34if __name__ == '__main__': 35 d = [5, 3, 6, 7, 2] # 正解数のデータ(全7問) 36 print(fun1(d)) 37 print(fun2(d)) 38 print(fun3(d)) 39 d = Cons.of(5, 3, 6, 7, 2) # 連結リスト(Consリスト)で用意 40 print(fun4(d))
エラー文
File "Functional.py", line 4, in <module>
from my.Cons import Cons # 連結リストを使う
ImportError: No module named my.Cons
サンプルコードが記載されている教科書には
Consモジュールで定義さレた連結リスト→Consリスト(本書特有の呼び方)
と記載されていてます。
sys.path.append('../')
ここのパスを変えればいいのではないかと思っているのですがなかなかうまくいかず苦戦しております。
ご教授いただけたらと思います。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。