簡體   English   中英

如何使用函數 Python 3.x 划分代碼

[英]How to divide code using functions Python 3.x

我讓我的代碼可以工作,但現在我需要將它分成函數 input()、processing() 和 output()。

lista=[]
lista = [int(clan) for clan in input("Unesi članove niza : ").split(',')]
lista.reverse()
rezultat=[]
c=0
for i in lista:
    if i < 0:
        i = i * -1
        t = i
        rev = 0
        rev = rev * 10 + t % 10
        t = t // 10
        i = i * -1
        rezultat.append(str(i))
    else:
            t = i
            rev = 0
    while t > 0:
        rev = rev * 10 + t % 10
        t = t // 10
        if rev == i:
            c=c+1
            rezultat.append(str(i))
            if c == 0:
                print("")
print(','.join(rezultat))

我真的不知道該怎么做所以如果有人可以幫助我會很好

像這樣的東西...

def input(clan):

    lista = [int(clan) for clan in input("Unesi članove niza : ").split(',')]
    lista.reverse()

    return lista   


def processing(lista):

    rezultat = []
    c = 0
    for i in lista:
        if i < 0:
            i = i * -1
            t = i
            rev = 0
            rev = rev * 10 + t % 10
            t = t // 10
            i = i * -1
            rezultat.append(str(i))
        else:
                t = i
                rev = 0
        while t > 0:
            rev = rev * 10 + t % 10
            t = t // 10
            if rev == i:
                c=c+1
                rezultat.append(str(i))
                if c == 0:
                    print("")
    return(','.join(rezultat))

def output(result):

    print(result)

if __name__ == '__main__':

    result_list = input(clan)
    result = processing(result_list)
    output(result)

嘗試使用 def 命令,
像這樣

def inp(): #declare a function
    #your commands
inp() #run the commands

不要忘記聲明全局變量,也就是您可以使用global命令在許多函數中更改的變量。

嘗試這個

def get_input():
    lista = [int(clan) for clan in input("Unesi članove niza : ").split(',')]
    lista.reverse()
    return lista
    
def process_input(input):
    rezultat=[]
    c=0
    for i in input:
        if i < 0:
            i = i * -1
            t = i
            rev = 0
            rev = rev * 10 + t % 10
            t = t // 10
            i = i * -1
            rezultat.append(str(i))
        else:
            t = i
            rev = 0
        while t > 0:
            rev = rev * 10 + t % 10
            t = t // 10
            if rev == i:
                c=c+1
                rezultat.append(str(i))
                if c == 0:
                    print("")
                    
        return rezultat
        
def main():
    lista = get_input()
    result = process_input(lista)
    
    def output(xlist):
        return ','.join(xlist)
    
    output(result)

if __name__ == "__main__":
    main()

這應該可行,但我認為沒有必要將其划分為函數,因為代碼甚至可能像 function 一樣運行良好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM