Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 6, 2017 15:13:03

axinax
Зарегистрирован: 2017-01-06
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка invalid syntax

File “first_win_dialog.py”, line 103
if __name__==“__main__”:
^
SyntaxError: invalid syntax (галочка стоит под двоеточием)
Вот такая ошибка возникла, причем вчера все работало, в этом месте код не менял. Python 2.7, OS Linux Mint последняя.
Скопировал код в другой файл, тоже самое.

Отредактировано axinax (Янв. 6, 2017 15:15:31)

Офлайн

#2 Янв. 6, 2017 16:01:07

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

ошибка invalid syntax

показывайте весь код. Скорее всего ошибка не здесь, а где то выше.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Янв. 6, 2017 16:09:32

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

ошибка invalid syntax

есть подозрение что опосля

 if __name__==__main__:
нет
     pass



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#4 Янв. 6, 2017 17:19:31

axinax
Зарегистрирован: 2017-01-06
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка invalid syntax

код - это виджет Qt, форма по заполнению одной из таблиц базы данных, там много отладочной и просто пробной фигни.
После if __main__ не было pass, но все работало.

 # coding: utf8
import os
import sys
from datetime import datetime, date
from pyspatialite import dbapi2 as db
from qgis.core import *
from PyQt4 import QtGui, uic
from PyQt4 import QtCore
from opendb import *
FORM_CLASS, _ = uic.loadUiType(os.path.join(
    os.path.dirname(__file__), 'first-wind.ui'))
class FirstWindDialog(QtGui.QDialog, FORM_CLASS):
    def __init__(self, parent=None):
        """Constructor."""
        super(FirstWindDialog, self).__init__(parent)
        # Set up the user interface from Designer.
        # After setupUI you can access any designer object by doing
        # self.<objectname>, and you can use autoconnect slots - see
        # http://qt-project.org/doc/qt-4.8/designer-using-a-ui-file.html
        # #widgets-and-dialogs-with-auto-connect
        self.setupUi(self)
        self.fillprojTypeBox()
        self.fillprojCompBox()
        print self.dateContract.date().toString('dd.MM.yyyy')
        
        QtCore.QObject.connect(self.conclusionNumber, QtCore.SIGNAL('returnPressed()'), self.findFieldData)
        QtCore.QObject.connect(self.projTypeBox, QtCore.SIGNAL('currentIndexChanged(int)'), self.contractEnable)
    def fillprojTypeBox(self):
        self.projTypeBox.addItem(u"судебная")
        self.projTypeBox.addItem(u"внесудебная") 
    def fillprojCompBox(self):
        self.projCompBox.addItem(u"АНО ЦСЭ")
        self.projCompBox.addItem(u"АНО Судебная Экспертиза")
        self.projCompBox.addItem(u"АНО Синергия")
        self.projCompBox.addItem(u"")
        
    def contractEnable(self):
        
        if self.projTypeBox.currentIndex()==1:
            #print 'OK'
            #print self.contractNumText.enabled
            self.contractNumText.setEnabled(True)
            self.dateContract.setEnabled(True)
            self.conclusionNumber.setEnabled(False)
            self.dateConclus.setEnabled(False)
        else:
            self.contractNumText.setEnabled(False)
            self.dateContract.setEnabled(False)
            self.conclusionNumber.setEnabled(True)
            self.dateConclus.setEnabled(True)
			    
                
     #Get int number from numberec lineedit
    def getNumberec(self):
        numberrec=int(self.numberec.text())
        return numberrec
     #Set numberec lineedit by input number
    def setNumberec(self, num):
        self.numberec.setText(str(num))
    def setprojType(self, t):
        if t==u'судебная':
            self.projTypeBox.setCurrentIndex(0)
        else:
            self.projTypeBox.setCurrentIndex(1)
    def sigexamp(self):
        self.lineEdit.returnPressed().connect(self.hand_pr)
    def findFieldData(self):
        findN=openDb('/home/alex/Yandex.Disk/coding/expert/expert1.sqlite', self.conclusionNumber.text()) 
        
        self.setAllFields(findN)
        
    def setAllFields(self, listData):
        self.setNumberec(listData[0])
        self.setprojType(listData[1])
        self.projCompBox.setEditText(listData[2])
        self.clientBox.setEditText(listData[3])
        if self.projTypeBox.currentIndex()==1:
            self.contractNumText.setText(listData[4])
            #sd=datetime.strptime(listData[5],"%d.%m.%Y").date()
            self.dateContract.setDate(datetime.strptime(listData[5],"%d.%m.%Y").date())
        else:
            self.conclusionNumber.setText(listData[6]
            #sd=datetime.strptime(listData[7],"%d.%m.%Y").date()
            #self.dateContract.setDate(datetime.strptime(listData[7],"%d.%m.%Y").date())
    #def accept(self):
        #pass
if __name__=="__main__":
	aps=QtGui.QApplication(sys.argv)
	dia=FirstWindDialog()
	abc=3
	#qv=QtCore.QString()
	#dia.setNumberec(abc)
	#numb=dia.getNumberec()
	#numb=int(numb)+1
	#print numb
	dia.show()
	sys.exit(aps.exec_())
вся ботва началась с метода setAllFields там где закоменченные строки - преобразования строки с датой в объект date и установка этой даты в виджете QDateEdit, причем в первой части if для одного виджета все нормально прокатило, а в части else - нет.
В методе accept стояла заглушка, чтобы по enter форма не закрывалась. Там в одном из QComboBox есть обработка сигнала returnPressed, но после нажатия enter форма закрывалась (с этим я пока не разобрался)
Далее когда появилась ошибка invalid syntax на этом self.dateContract.setDate(datetime.strptime(listData,“%d.%m.%Y”).date()), после закоменчивания эта ошибка стала спускаться ниже, закоментил def accept, спустилась на if __name__

Офлайн

#5 Янв. 6, 2017 17:31:02

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2823
Репутация: +  185  -
Профиль   Отправить e-mail  

ошибка invalid syntax

  self.conclusionNumber.setText(listData[6]



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#6 Янв. 6, 2017 17:42:31

axinax
Зарегистрирован: 2017-01-06
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка invalid syntax

Вот блин, глаз замылился, вроде весь код просмотрел, а это пропустил (ночная сборка, блин). Спасибо большое.

Офлайн

#7 Янв. 6, 2017 18:06:53

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

ошибка invalid syntax

ну а Вам и не надо смотреть - используйте нормальные инструменты разработки, которые покажут такие ошибки. И не надо будет ломать голову и тратить время в пустую.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#8 Янв. 11, 2017 11:54:08

axinax
Зарегистрирован: 2017-01-06
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ошибка invalid syntax

JOHN_16
ну а Вам и не надо смотреть - используйте нормальные инструменты разработки, которые покажут такие ошибки. И не надо будет ломать голову и тратить время в пустую.
Посоветуйте для lunux
Я использую Geany

Офлайн

#9 Янв. 11, 2017 12:01:11

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

ошибка invalid syntax

Pycharm
Sublime TEXT



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#10 Янв. 11, 2017 14:42:49

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2823
Репутация: +  185  -
Профиль   Отправить e-mail  

ошибка invalid syntax

>Посоветуйте для lunux

Wing IDE



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version