Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 24, 2018 20:40:41

Panzershracker
Зарегистрирован: 2018-08-24
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

Добрый вечер!
Прохожу обучение по питону, базовый курс.
Сначала все было нормально, находил ошибки, гуглил, но сейчас столкнулся с проблемой которую никак не могу решить!
Дело в том что эту строку я даже не трогал, но показывает синтаксическую ошибку (ниже прикреплю).
Перекопал интернет, если у кого и возникала ошибка, так из-за того что не хватает где либо знака - заятой, двоеточия, кавычки.Но у меня вроде все правильно, сколько не проверял не пойму в чем дело.
Нужно пройти еще 6 уроков этого курса, и еще один курс из 10 уроков до начала основной программы, и на это у меня осталось 8 дней, а я с этим застрял.

Помогите пожалуйста.

 #coding : utf-8
import os
import psutil
import multiprocessing
import sys
import shutil
print("Программа составлена величайшим заклинателем змей, наслаждайтесь")
print("Привет!как тебя зовут?")
name = input("Ваше имя: ")
print(name, ", Добро пожаловать в python!")
answer = ""
while answer != "q":
	answer = input("Хочешь поработать? (Y/N/Q):")
	if answer == "y":
		print("Отлично, что мне сдеать?: ")
		print("(1)-Вывести информацию о системе")
		print("(2)-Вывести список файлов")
		print("(3)-Вывести список процессов")
		print("(4)-Продублирую файлы в текущей директории")
		print("(5)-Дублировать выбранный файл"
do = int(input("Укажите номер действия: "))
		if do == 1:
			print("текущая директория: ", os.getcwd())
			print("платформа: ", sys.platform)
			print("кодировка системы: ", sys.getfilesystemencoding())
			print("логин пользователя: ", os.getlogin())
			print("количество ядер: ", multiprocessing.cpu_count())
		elif do == 2:
			print(os.listdir())
		elif do ==3:
			print(psutil.pids())
		elif do == 4:
			print("Файлы скопированы")
			file_list = os.listdir()
			i = 0
			while i < len(file_list):
				newfile = file_list[i] + '.dupl'
				shutil.copy(file_list[i], newfile)
				i += 1
		elif do == 5:
			print("Выберите файл:")
			print(file_list)
		else :
			pass
	elif answer == "n":
		print("Bye!")
	elif answer == "q":
		print("Bye!")
	else :
		print("unknown answer")
	
 

C:\Users\panzershracker\Desktop\Проекты\Python>new.py
File “C:\Users\panzershracker\Desktop\Проекты\Python\new.py”, line 24
do = int(input(“Укажите номер действия: ”))
^
SyntaxError: invalid syntax



Заранее благодарен!

Отредактировано Panzershracker (Авг. 24, 2018 20:42:53)

Офлайн

#2 Авг. 24, 2018 21:17:54

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10022
Репутация: +  857  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

Отступ должен быть одинаковым.

  
		print("(5)-Дублировать выбранный файл"
		do = int(input("Укажите номер действия: "))
		if do == 1:

Panzershracker
  
else :
Пробел перед двоеточием убери.



Отредактировано py.user.next (Авг. 24, 2018 21:19:05)

Офлайн

#3 Авг. 24, 2018 21:29:25

AleksandrPavlovich
Зарегистрирован: 2018-08-23
Сообщения: 4
Репутация: +  1  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

 		print("(5)-Дублировать выбранный файл"
А где закрывающая скобка?
Успехов в учёбе!

Отредактировано AleksandrPavlovich (Авг. 24, 2018 21:30:17)

Офлайн

#4 Авг. 24, 2018 21:40:07

Panzershracker
Зарегистрирован: 2018-08-24
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

AleksandrPavlovich

БАЛИН!!! Знаю ведь что надо было перед DO искать, но недогодался что это предыдущая строка!))))

Ребят, спасибо большое!!!

py.user.next
Отступ должен быть одинаковым.

Насчет отступа не понял.

Офлайн

#5 Авг. 24, 2018 22:12:33

DamMercul
Зарегистрирован: 2017-11-26
Сообщения: 325
Репутация: +  13  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

Panzershracker
В питоне так заведено, что фигурных скобок нет, тут все решает 4 пробела или табы. Питон не поймет команды, если правильно ее не прочтет, а для этого и нужны отступы. Если будет 3 пробела на фоне 4 то питон сойдет с ума и пошлет прогера нафиг. Используй какой-нибудь IDE, он за тебя все сам сделает - в твое удовольствие. Например PyCharm, Sublime Text + anaconda, WingIDE, eclipse + pymodule и т.д.

UPD: Необязательно 4 пробела, можешь хоть 10, главное чтобы все строки разделялись именно 10 пробелами, если где-то 10, а где-то 4, то полюбому ошибка



____________________________________________________

 # Life loop
while alive:
    if (fun > boredom) and money:
        pass_day(fun, boredom, money)
        continue
    else: break

Отредактировано DamMercul (Авг. 24, 2018 22:13:32)

Офлайн

#6 Авг. 24, 2018 22:25:29

Panzershracker
Зарегистрирован: 2018-08-24
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

syntax error. Помогите новичку.

DamMercul

Все, понял о чем ты!
На тот момент я и так и сяк пытался и с табами и впритык, проблема была в скобке, но я понял тебя, спасибо!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version