不使用Python的内置函数对元组进行排序

2024-06-28 15:47:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图合并这两个元组(t,n),因此它返回一个tuple,它是t和n的有序组合

找不到这有什么问题:

def junta(t,n):
    a = ()
    b = () 
    minimo = t[0]  
    for x in t: 
        if x < minimo:
            minimo = x
    a = a + (minimo)
    t = t - (minimo)
    minimo2 = n[0]  
    for y in n: 
        if y < minimo2:
            minimo2 = y
    b = b + (minimo2)
    n = n - (minimo2)
    c = a + b
    return c

此操作应与此相同:

^{pr2}$

Tags: inforreturnifdef元组有序tuple
2条回答

多亏了你的回答,我有了独奏:

def junta(t,n):
a = ()
b = ()
d =()
while len(t)>0: 
    minimo = t[0]  
    for x in t: 
        if x < minimo:
            minimo = x
    a = a + (minimo,)
    minimo_index = t.index(minimo)
    t = t[:minimo_index] + t[minimo_index+1:]
while len(n)>0:
    minimo2 = n[0]  
    for y in n: 
        if y < minimo2:
            minimo2 = y
    b = b + (minimo2,)
    minimo2_index = n.index(minimo2)
    n = n[:minimo2_index] + n[minimo2_index+1:]
c = a + b
while len(c)>0:
    minimo3 = c[0]  
    for z in c: 
        if z < minimo3:
            minimo3 = z
    d = d + (minimo3,)
    minimo3_index = c.index(minimo3)
    c = c[:minimo3_index] + c[minimo3_index+1:]
return d

括号运算符有两个相互冲突的含义:其中一个是作为分组运算符。另一个是创建元组。(minimo)在代码中意味着用更高的优先级计算minimo。您希望(minimo,)创建一个长度为1的元组。在

相关问题 更多 >