4

長さmのタプルを作成します。位置kに1つのnがある場合を除いて、各位置に1があります。

例:m = 5、n = 7、k = 3は次のようになり(1,1,1,7,1)ます(長さ5、位置3に7)

これどうやってするの?

4

3 に答える 3

11
>>> m, n, k = 5, 7, 3
>>> tuple(n if i == k else 1 for i in range(m))
(1, 1, 1, 7, 1)
于 2012-06-28T16:57:00.240 に答える
9

最初にリストを作成し、次に本当に必要な場合はそれをタプルに変換します。

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)
于 2012-06-28T16:54:30.580 に答える
8
(1,) * k + (n,) + (1,) * (m-k-1)
于 2012-06-28T17:44:51.363 に答える