Python: отображать введенный номер - PullRequest
0 голосов
/ 05 мая 2020

Введенный номер должен отображаться так, как он был введен. Пример: введите 2, дисплей 2; введите 3.2 display 3.2

Вы должны иметь возможность вводить все числа, отрицательные, положительные и десятичные.

Текущее поведение: введите 2 display 2.0

zahl = float(input())

while not(zahl > 0 and zahl % 1 == 0):
  print('Ganze und positive Zahl eingeben: ' + str(zahl))
  zahl = float(input())

print('Ganze und positive Zahl eingeben: ' + str(zahl))
zahl = int(zahl)

Ответы [ 3 ]

1 голос
/ 05 мая 2020

Проверьте это

zahl = float(input("Enter number: "))
if (zahl==int(zahl)):
    zahl=int(zahl)
print('Ganze und positive Zahl eingeben: ' + str(zahl))
0 голосов
/ 05 мая 2020

Я думаю, это то, что вы хотите:

def typify(num):
    return int(num) if float(num) % 1 == 0 else float(num)

zahl = typify(input())

print(f'Ganze und positive Zahl eingeben: {zahl}')
0 голосов
/ 05 мая 2020

Сохраните исходную введенную строку для использования в сообщении:

zahl_str = input()
zahl = float(zahl_str)
while not(zahl > 0 and zahl % 1 == 0):
  print('Ganze und positive Zahl eingeben: ' + zahl_str)
  zahl_str = input()
  zahl = float(zahl_str)

print('Ganze und positive Zahl eingeben: ' + zahl_str)
zahl = int(zahl)
...