| 
 | 
back to boardWA2 with re import re fl = re.compile('[+-]?[1234567890]*\.[1234567890]*([Ee][+-]?[1234567890]+)?') lf = re.compile('[+-]?[1234567890]+([Ee][+-]?[1234567890]+)?') nums = [] while True:     first = input()     if first == '#':         break     nums.append((first, int(input()))) for num in nums:     num0 = num[0]     if not (re.fullmatch(fl, num0) or re.fullmatch(lf, num0)):         print('Not a floating point number')         continue     try:         e_pos = num0.index('e')         exp = int(num0[e_pos + 1:])         num0 = num0[:e_pos]     except:         try:             e_pos = num0.index('E')             exp = int(num0[e_pos + 1:])             num0 = num0[:e_pos]         except:             exp = 0     pm = num0[0]     if pm in ['+', '-']:         num0 = num0[1:]     else:         pm = '+'     if pm == '+':         pm = ''     if exp > 0:         num0 += '0' * exp     elif exp < 0:         num0 = '0' * (-exp) + num0     try:         dot_pos = num0.index('.')     except:         dot_pos = len(num)         num0 += '.'     new_dot_pos = dot_pos + exp     num0 = num0[:dot_pos] + num0[dot_pos + 1:]     num0 = num0[:new_dot_pos] + '.' + num0[new_dot_pos:]     while num0.startswith('0'):         num0 = num0[1:]     if num0.startswith('.'):         num0 = '0' + num0     num0 += '0' * num[1]     num0 = num0[:num0.index('.') + num[1] + 1]     if num0.endswith('.'):         num0 = num0[:-1]     print(num0)  |  
  | 
|