Python题解 | #学英语#
学英语
https://www.nowcoder.com/practice/1364723563ab43c99f3d38b5abef83bc
import sys ones = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"] tens = ["ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"] twenties = ["zero", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"] hundreds = ["hundred", "thousand", "million", "billion"] ihundreds = [100, 1000, 1000000, 1000000000, 1000000000000] def istoe(n): if 0 <= n < 10: return ones[n] elif 10 <= n <= 19: return tens[n % 10] elif 20 <= n <= 99: s = twenties[n // 10] s2 = (" " + ones[n % 10]) if (n % 10) else '' return s + s2 else: for i in range(4): if n < ihundreds[i + 1]: s3 = (istoe(n // ihundreds[i]) + " " + hundreds[i]) s4 = ((" " if i else " and ") + istoe( n % ihundreds[i])) if (n % ihundreds[i]) else "" return s3 + s4 while True: try: a = int(input()) print(istoe(a)) except: break