回答編集履歴
2
修正
test
CHANGED
@@ -1,23 +1,2 @@
|
|
1
|
-
|
1
|
+
質問勘違いのため削除
|
2
2
|
|
3
|
-
実際は、このケースなら、can110さんの回答のように、状態遷移っぽく考えるほうが、スマートでわかりやすいと思います。
|
4
|
-
|
5
|
-
```python
|
6
|
-
def q(question, yes, no):
|
7
|
-
l = [f'if input("あなたは{question}?") == "yes":']
|
8
|
-
l += [' ' + s for s in yes]
|
9
|
-
l += ['else:']
|
10
|
-
l += [' ' + s for s in no]
|
11
|
-
return l
|
12
|
-
|
13
|
-
def r(result):
|
14
|
-
return [f'print("あなたは{result}!")']
|
15
|
-
|
16
|
-
q3 = q('器用', r('熱中'), r('ひょうきん'))
|
17
|
-
q2 = q('声が大', r('注目'), q3)
|
18
|
-
q1 = q('年上', q2, q3)
|
19
|
-
|
20
|
-
s = '\n'.join(q1)
|
21
|
-
|
22
|
-
exec(s)
|
23
|
-
```
|
1
表記
test
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
作者がここでいいたいことが、「動的に組み立てた文字列を実行できる」ということだとしたら、
|
1
|
+
作者がここでいいたいことが、「動的に組み立てた文字列を実行できる」ということだとしたら、無理やり感はありますが、下記のようにプログラムとなる文字列を何らかの方法で組み立てて、一発で実行するというのになるんでしょうか・・・
|
2
|
-
無理やり感はありますが、下記のようにプログラムとなる文字列を何らかの方法で組み立てて、
|
3
|
-
一発で実行するというのになるんでしょうか・・・
|
4
2
|
|
5
3
|
実際は、このケースなら、can110さんの回答のように、状態遷移っぽく考えるほうが、スマートでわかりやすいと思います。
|
6
4
|
|