我刚从学校的python开始,我不是很好,但我会尽力解释我的最好。我有一个程序,我希望程序接受只有整数的小数。我不知道怎么做。你能帮我改进我的代码吗?对不起我的英文..代码的一部分是瑞典语,但我想你可以理解。如果你不问我! 最好的问候Jesper
a = int(input("Skriv ett heltal (ej decimaltal): "))
b = int(input("Skriv ett till heltal (ej decimaltal): "))
print()
print('Kvadrattabell')
print('=============')
print('Tal\tKvadrat')
for i in range(a, b+1):
print("{0}\t{1}".format(i,i*i))
def funktion():
a = int(input("Skriv ett heltal: "))
b = int(input("Skriv ett till heltal: "))
for i in range(a, b+1):
print("{0}\t{1}".format(i,i*i))
while True:
svar = input('Vill du köra programmet igen? (J/N) ')
if svar == 'J' or svar == 'j'or svar == "Jajemensan" or svar == "Ja" or svar == "Ja! Gör det":
funktion()
if svar == 'N' or svar == 'n' or svar == 'Nej' or svar == "Nejtack" or svar == "Det räcker för idag!":
break
print('Ok då. Tack för idag!')
答案 0 :(得分:1)
首先,整数不能包含小数。如果你想要小数,你将不得不使用浮点类型!
使用float()
功能:
a = float(input("Skriv ett heltal (ej decimaltal): "))
b = float(input("Skriv ett till heltal (ej decimaltal): "))
在funktion
函数中:
def funktion:
a = float(input("Skriv ett heltal: "))
b = float(input("Skriv ett till heltal: "))
您可以阅读有关类型here的更多信息 此外,关于您的条件,您可以通过将其放入列表来简化:
ja = ['j', 'jajemensan', 'ja' 'ja! gör det']
#lower it, and check if it's between the valid inputs:
if svar.lower() in ja:
#do something
希望这有帮助!如果您需要更多帮助,请问我:)
答案 1 :(得分:1)
你可以在你希望在代码中接受输入的每个地方像这样用float替换int: -
a = float(input("Skriv ett heltal (ej decimaltal): "))
b = float(input("Enter another no: "))
在其他地方同样如此。 这是因为,整数不能接受小数。有关内置类型的更多信息,请查看以下链接 http://www.tutorialspoint.com/python/python_variable_types.htm 和 http://docs.python.org/2/library/stdtypes.html