Я пытаюсь преобразовать свой код из java в python, и я сталкиваюсь с этой проблемой. Я пытаюсь сделать календарь и все, что я ввожу месяц и год, я сталкиваюсь с этой проблемой, что я не знаю, что значит.Ошибка Python EOF error с входами
Можете ли вы, ребята, помочь мне?
Traceback (most recent call last):
File "/Users/macbook/Documents/Untitled.py", line 41, in <module>
main()
File "/Users/macbook/Documents/Untitled.py", line 30, in main
m, y = eval(input("Enter the month, and year (separated by spaces): "))
File "<string>", line 1
12 2013
^
SyntaxError: unexpected EOF while parsing
Мой код:
#------------------------------------------------------------------------
def isLeapYear():
if((year % 4 == 0) and (year % 100 != 0) or (year % 400 == 0)):
return true
else:
return false
#---------------------------------------------------------------------
def dayOfWeek(mon, day, year):
if(mon < 3):
year = year-1
wy = 3 + year + (year/4) - (year/100) + (year/400)
wm = int(2.6 * ((mon+9 % 12) +0.5))
wd = day-1
return (wd + wm + wy) % 7
#---------------------------------------------------------------------
def daysInMonth(month, year):
if(month ==4 or month ==6 or month ==9 or month==11):
return 30
elif(month==2):
if(isLeapYear(year)):
return 29
else:
return 28
else:
return 31
def main():
m, y = eval(input("Enter the month, and year (separated by spaces): "))
print("Sun Mon Tue Wed Thu Fri Sat\n")
i=0
while(i<dayOfWeek(m,1,y)):
print(" ")
i=i+1
d=1
while(d <= daysInMonth(m,y)):
print(d)
if(dayOfWeek(m,d,y) == 6):
print("\n")
d=d+1
main()
спасибо! однако после того, как я исправил эту проблему, мои даты не будут распечатываться при компиляции моей программы. я не могу понять проблему. – user3002936
@ user3002936: ваш вызов 'dayOfWeek (m, 1, y)' никогда не меняется, поэтому существует бесконечный цикл. –
О, ладно, и я исправил это, но он все равно не печатает, как должен делать календарь. как мне печатать System.out.printf («% - 5d», d) в python? я застреваю там. – user3002936