Python - Anhängen und Sortieren einer Liste

Ich arbeite an einem Code, bei dem ich versuche, ein argv (i, w oder f) von der Befehlszeile zu übernehmen. Mit input möchte ich dann eine Liste von Ganzzahlen, Gleitkommazahlen oder Wörtern erstellen und einige Dinge ausführen.

User gibt 'f' in die Befehlszeile ein und gibt dann eine Liste von Gleitkommawerten ein, wobei die Werte an eine leere Liste angehängt werden. Dann sortiert das Programm die Liste der Float-Dateien und druckt die Ausgabeergebnisse aus.

Ich möchte nach Wörtern und ganzen Zahlen suchen.

Wenn die Eingabe eine Liste von Wörtern ist, druckt die Ausgabe die Wörter in alphabetischer Reihenfolge. Wenn die Eingabe eine Liste von ganzen Zahlen ist, ist die Ausgabe die Liste in umgekehrter Reihenfolge.

Dies ist der Code, den ich bisher habe, aber ab jetzt hängen einige der Eingabewerte die Werte nur an die leere Liste an. Was fehle ich, das die ordnungsgemäße Ausführung des Codes verhindert?

Zum Beispiel wird das Programm durch Hinzufügen des Programmnamens und 'w' für das Wort gestartet:

$ test.py w
>>> abc ABC def DEF
[ABC, DEF,abc,def] # list by length, alphabetizing words 

Cod

import sys, re

script, options = sys.argv[0], sys.argv[1:]

    a = [] 

    for line in options: 

        if re.search('f',line):     # 'f' in the command line
            a.append(input()) 
            a.join(sorted(a)) # sort floating point ascending 
            print (a)  


        elif re.search('w', line):              
            a.append.sort(key=len, reverse=True) # print list in alphabetize order
            print(a) 

        else: re.search('i', line)
        a.append(input())   
        ''.join(a)[::-1]  # print list in reverse order
        print (a)  

Antworten auf die Frage(2)

Ihre Antwort auf die Frage