2017-09-30 5 views
-5

Wie bekomme ich meinen Code, um die Antwort ohne die zusätzlichen '' und () zurückzugeben?Wie erhalte ich meinen Code, um die Antwort ohne das Extra zurückzugeben '' und()

def analyze_text(text): 
    #removes all of the non-al charaters 
    new_string = "" 
    for eachLetter in text: 
     if eachLetter.isalpha(): 
      new_string += eachLetter 
    #count the number of e 
    text_count_E = text.count("E") 
    text_count_e = text.count("e") 
    total_e = text_count_E + text_count_e 
    #gets the percentage of e 
    percentage = 100 * total_e/len(new_string) 

    return "The text contains ",len(new_string),"alphabetic characters, of 
    which",total_e,"(",percentage,")","are 'e'" 

Antwort

0

Pls, stellen Sie einen lesbareren Code zur Verfügung, der das nächste Mal auflistet.

Sie können einfach die format() -Methode verwenden, die jedes String-Objekt ausführen kann. Dies kann hilfreich sein. https://pyformat.info/#simple

In Ihrem Fall wird es so etwas wie diese:

return "The text contains {} alphabetic characters, of which {} ({}) are 'e'".format(len(new_string), total_e, percentage) 
+2

Bitte geben Sie einen lesbaren Code in Ihrer Antwort auflistet. – ekhumoro

0

Sie ein Tupel zurückgegeben, nicht einen einzelnen String

nur versuchen, die notwendigen Werte zurückgegeben werden, dann ist Ihr Ausgangsdruck

return len(new_string), total_e 

Und außerhalb der Funktion,

new_len, total_e = analyze_text(text) 
percent = 100 * total_e/new_len 

print("The text contains {} alphabetic characters, of which {} ({}) are 'e'".format(new_len, total_e, percent)) 
Verwandte Themen