回答編集履歴

5

更新

2019/11/29 14:15

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -98,11 +98,11 @@
98
98
 
99
99
  if a < b:
100
100
 
101
- return hogehoge()
101
+ return c()
102
102
 
103
103
  else:
104
104
 
105
- return fugafuga()
105
+ return d()
106
106
 
107
107
  ```
108
108
 
@@ -110,15 +110,15 @@
110
110
 
111
111
  ```python
112
112
 
113
- f=lambda a,b: a<b and hogehoge() or fugafuga()
113
+ f=lambda a,b: a<b and c() or d()
114
114
 
115
115
  ```
116
116
 
117
- の方が短い、ただし`hogehoge()`が真値を返すという保証がある場合だけ、みたいな話だったのではないでしょうか?
117
+ の方が短い、ただし`c()`が真値を返すという保証がある場合だけ、みたいな話だったのではないでしょうか?
118
118
 
119
119
 
120
120
 
121
- それなら`min`では済まないし、`f=lambda a,b:[fugafuga(),hogehoge()][a<b]`でも解決しない(2つの式が両方評価されてしまう)ので多少の意味はあるかな、と思いました。
121
+ それなら`min`では済まないし、`f=lambda a,b:[c(),d()][a<b]`でも解決しない(`c()`と`d()`の2つの式が両方評価されてしまう)ので多少の意味はあるかな、と思いました。
122
122
 
123
123
 
124
124
 

4

さらに考察

2019/11/29 14:15

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -78,4 +78,48 @@
78
78
 
79
79
 
80
80
 
81
- ここは取り消します(追記)
81
+ ここは取り消します
82
+
83
+
84
+
85
+ ----
86
+
87
+
88
+
89
+ 追記
90
+
91
+
92
+
93
+ 考えみたら`f=min`で済む内容なので(注:`min`が3回呼ばれる場合には`f`に束縛した方が全体を短くできる)そもそも話がおかしいわけで、ということはおおもとの趣旨は
94
+
95
+ ```python
96
+
97
+ def f(a, b):
98
+
99
+ if a < b:
100
+
101
+ return hogehoge()
102
+
103
+ else:
104
+
105
+ return fugafuga()
106
+
107
+ ```
108
+
109
+ より
110
+
111
+ ```python
112
+
113
+ f=lambda a,b: a<b and hogehoge() or fugafuga()
114
+
115
+ ```
116
+
117
+ の方が短い、ただし`hogehoge()`が真値を返すという保証がある場合だけ、みたいな話だったのではないでしょうか?
118
+
119
+
120
+
121
+ それなら`min`では済まないし、`f=lambda a,b:[fugafuga(),hogehoge()][a<b]`でも解決しない(2つの式が両方評価されてしまう)ので多少の意味はあるかな、と思いました。
122
+
123
+
124
+
125
+ そういう前提とかいったものが伝言ゲームの過程で無くなっていって、まったくの無意味な話になったのではないかな、と想像します。

3

取り消します

2019/11/29 14:13

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -66,7 +66,7 @@
66
66
 
67
67
 
68
68
 
69
- 全く本筋じゃないですが
69
+ ~~全く本筋じゃないですが~~
70
70
 
71
71
  ```python
72
72
 
@@ -74,4 +74,8 @@
74
74
 
75
75
  ```
76
76
 
77
- の方が短いだろ、と思いました。
77
+ ~~の方が短いだろ、と思いました。~~
78
+
79
+
80
+
81
+ ここは取り消します(追記)

2

追記

2019/11/29 13:55

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -57,3 +57,21 @@
57
57
  おそらくですが、**a>0かつb>0であることが前提として示されている**場合などにはこういうテクニックもあるよ、というような話だったんだろうと思います。
58
58
 
59
59
  (説明の時にうっかり省いてしまったのか、書いた人が理解できていないのかは判断できませんので、よい方で解釈すると、ということで)
60
+
61
+
62
+
63
+ ----
64
+
65
+ 追記
66
+
67
+
68
+
69
+ 全く本筋じゃないですが
70
+
71
+ ```python
72
+
73
+ f=lambda a,b:[b,a][a<b]
74
+
75
+ ```
76
+
77
+ の方が短いだろ、と思いました。

1

些細

2019/11/29 13:24

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
 
34
34
 
35
- の記事は悪く言うと**嘘**もしくは**間違い**、悪く言わなくても「使い道が限定されていることを端折っている正確ではない記事」です。
35
+ の記事は悪く言うと**嘘**もしくは**間違い**、悪く言わなくても「使い道が限定されていることを端折っている正確ではない記事」です。
36
36
 
37
37
 
38
38
 
@@ -42,7 +42,7 @@
42
42
 
43
43
 
44
44
 
45
- つまり、の記事を読んで
45
+ つまり、の記事を読んで
46
46
 
47
47
 
48
48