長さmのタプルを作成します。位置kに1つのnがある場合を除いて、各位置に1があります。
例:m = 5、n = 7、k = 3は次のようになり(1,1,1,7,1)
ます(長さ5、位置3に7)
これどうやってするの?
>>> m, n, k = 5, 7, 3
>>> tuple(n if i == k else 1 for i in range(m))
(1, 1, 1, 7, 1)
最初にリストを作成し、次に本当に必要な場合はそれをタプルに変換します。
def make_tuple(m, n, k):
a = [1] * m
a[k] = n
return tuple(a)
例:
>>> make_tuple(m=5, n=7, k=3)
(1, 1, 1, 7, 1)
(1,) * k + (n,) + (1,) * (m-k-1)