ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 -pyqt
    파이썬 2022. 6. 3. 14:35
    728x90

    <pyqt02 숫자 줄이기>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    
    
    
    form_class = uic.loadUiType("pyqt02.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
        
        def myclick(self):
           
    
            a=self.le.text()
            aa =int(a)
            aa +=-2
            self.le.setText(str(aa))
        
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

    <pyqt03 덧셈예제>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    
    
    form_class = uic.loadUiType("pyqt03.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
        
        def myclick(self):
           
    
            a=self.le1.text()
            b=self.le2.text()
            aa=int(a)
            bb=int(b)
            sum =aa+bb
        
            self.le3.setText(str(sum))
            
            
        
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

    <pyqt04 구구단>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    
    
    
    form_class = uic.loadUiType("pyqt04.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
        
        def myclick(self):
           
            dan =self.le.text()
            idan=int(dan)
            txt =""
            txt+="{}*{}={}\n".format(idan,1,idan*1)
            txt+="{}*{}={}\n".format(idan,2,idan*2)
            txt+="{}*{}={}\n".format(idan,3,idan*3)
            txt+="{}*{}={}\n".format(idan,4,idan*4)
            txt+="{}*{}={}\n".format(idan,5,idan*5)
            txt+="{}*{}={}\n".format(idan,6,idan*6)
            txt+="{}*{}={}\n".format(idan,7,idan*7)
            txt+="{}*{}={}\n".format(idan,8,idan*8)
            txt+="{}*{}={}\n".format(idan,9,idan*9)
            self.te.setText(txt)
            
            
        
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

    <pyqt05 홀짝 게임>

    import sys
    from PyQt5.QtWidgets import *
    from PyQt5 import uic
    import random
    
    
    form_class = uic.loadUiType("pyqt05.ui")[0]
    
    
    class WindowClass(QMainWindow, form_class) :
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
            #enter 치면 자동으로 나오는 이벤트!!!!
            self.le_mine.returnPressed.connect(self.myclick)
            
            
        def myclick(self):
            mine = self.le_mine.text()
            com = ""
            result = ""
            
            rnd = random.random()
            
            if rnd > 0.5 :
                com = "홀"
            else :
                com = "짝"
            
            
            if mine == com :
                result = "이김"
                        
            else :
                result = "짐"
                
            self.le_com.setText(com)
            self.le_result.setText(result)
            
    
    
    
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
    
        myWindow = WindowClass() 
    
        app.exec_()

     enter 누르면  되게 할것인데 검색 키워드 : qlineedit enter pressed 이렇게 한다.

     

    <pyqt06 로또 번호 생성하기>

    import random
    
    arr9 = [1,2,3,4,5,6,7,8,9]
    arr3 = []
    
    for i in range(3):
        rnd = int(len(arr9)*random.random())
        p = arr9.pop(rnd)
        arr3.append(p)
    
    print("p", p)
    print(arr9)
    print(arr3)

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import *
    import random
    
    form_class = uic.loadUiType("pyqt06.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self):
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
            
        def myclick(self):
            arr45 = list(range(1,45+1))
            arr6=[]
        
            for i in range(6):
                rnd = int(len(arr45)*random.random())
                p = arr45.pop(rnd)
                arr6.append(p)
            
            self.lbl1.setText(str(arr6[0]))    
            self.lbl2.setText(str(arr6[1]))    
            self.lbl3.setText(str(arr6[2]))    
            self.lbl4.setText(str(arr6[3]))    
            self.lbl5.setText(str(arr6[4]))    
            self.lbl6.setText(str(arr6[5]))    
               
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        myWindow = MainClass()
        app.exec_()

    <pyqt07 배수의 합 구하기>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    
    
    
    form_class = uic.loadUiType("pyqt07.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
        
        def myclick(self):
            a=self.le1.text()
            b=self.le2.text()
            c=self.le3.text()
           
            aa=int(a)
            bb=int(b)
            cc=int(c)
            sum = 0
            
            for i in range(aa,bb+1):
                if i % cc==0:
                    sum += i
           
            self.le4.setText(str(sum))
    
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

    <전화번호 +alert창 띄우기>

     

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    from PyQt5.Qt import QMessageBox
    
    
    
    
    form_class = uic.loadUiType("pyqt08.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb1.clicked.connect(self.myclick)
            self.pb2.clicked.connect(self.myclick)
            self.pb3.clicked.connect(self.myclick)
            self.pb4.clicked.connect(self.myclick)
            self.pb5.clicked.connect(self.myclick)
            self.pb6.clicked.connect(self.myclick)
            self.pb7.clicked.connect(self.myclick)
            self.pb8.clicked.connect(self.myclick)
            self.pb9.clicked.connect(self.myclick)
            self.pb0.clicked.connect(self.myclick)
            self.pb_call.clicked.connect(self.mycall)
           
        def mycall(self):
            msg=self.le.text()+"전화할거야~"
            QMessageBox.information(self, "calling",msg)
            
        def myclick(self):
            #print(self.sender().text())
            str_new =self.sender().text()
            str_old=self.le.text()
            
            self.le.setText(str_old+str_new)
    
           
            
        
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

     

    <pyqt09 가위바위보 게임>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    import random
    
    
    
    form_class = uic.loadUiType("pyqt09.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
        
        def myclick(self):
            mine=""
            com=""
            result=""
            
            mine=self.leMine.text()
           
            rnd=random.random()
            if rnd > 0.66 :
                com="가위"
            elif rnd> 0.33:
                com="바위"
            else:
                com="보"  
             
            self.leCom.setText(com)
            
            if com==mine:
                result="비김"
            if com=="가위" and mine=="보" : result="컴이김"
            if com=="바위" and mine=="가위" : result="컴이김"
            if com=="보" and mine=="바위" : result="컴이김"
                
            if mine=="가위" and com=="보" : result="나이김"
            if mine=="바위" and com=="가위" : result="나이김"
            if mine=="보" and com=="바위" : result="나이김"
                
            self.leResult.setText(result)
                
                
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

     

     

     

    <pyqt0a 별 출력하기>

    import sys
    from PyQt5.QtWidgets import *
    from PyQt5 import uic
    
    
    formclass = uic.loadUiType("pyqt0a.ui")[0]
    
    class MyWindow(QMainWindow, formclass):
        
        
        def __init__(self):
            super().__init__()
            self.setupUi(self)
            self.pb.clicked.connect(self.myClick)
        
        def drawStar(self, cnt):  
            ret = ""
            for i in range(cnt):
                ret += "*" 
            ret += "\n"
            return ret
            
        def myClick(self):
            first = int(self.le_first.text())
            last = int(self.le_last.text())
            result = ""
            for i in range(first,last+1):
                result += self.drawStar(i)
            # for i in range(first,last-1,-1):
            #     result += self.drawStar(i)
    
            self.te.setText(result)     
        
    
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        myWindow = MyWindow()
        myWindow.show()
        app.exec_()

     

    <pyqt0b 홈런 게임>

    import sys
    from PyQt5 import uic
    from PyQt5.QtWidgets import QApplication, QMainWindow
    import random
    from PyQt5.Qt import QMessageBox
    
    form_class = uic.loadUiType("pyqt0b.ui")[0]
    
    class MainClass(QMainWindow, form_class):
        def __init__(self) :
            QMainWindow.__init__(self)
            self.com = "123"
            self.setupUi(self)
            self.show()
            self.pb.clicked.connect(self.myclick)
            self.setCom()
     
        def setCom(self): 
            arr9 = [1,2,3,4,5,6,7,8,9]
            
            for i in range(10):
                rnd = int(random.random()*9)
                a = arr9[rnd]
                b = arr9[0]
                arr9[0]=a
                arr9[rnd]=b
            
            self.com = str(arr9[0]) + str(arr9[1]) +str(arr9[2])
            print(self.com)
    
        
        def myclick(self):
            mine = self.le.text()
            bs = self.getBallStrike(self.com,mine)
            
            str_old = self.te.toPlainText()
            
            self.te.setText(str_old+mine+" "+bs+"\n")
            self.le.setText("")
            
            if bs == "3S0B":
                QMessageBox.about(self,'baseball','드디어 이겼습니다.')
    
        def getBallStrike(self,com,mine):
            strike = 0
            ball = 0
            
            c1 = com[0:1]
            c2 = com[1:2]
            c3 = com[2:3]
            
            m1 = mine[0:1]
            m2 = mine[1:2]
            m3 = mine[2:3]
            
            if c1 == m1 :   strike+=1
            if c2 == m2 :   strike+=1
            if c3 == m3 :   strike+=1
            
            if c1 == m2 or c1 == m3:   ball+=1
            if c2 == m1 or c2 == m3:   ball+=1
            if c3 == m1 or c3 == m1:   ball+=1
    
            return str(strike)+"S"+str(ball)+"B"
             
            
    if __name__ == "__main__" :
        app = QApplication(sys.argv) 
        window = MainClass() 
        app.exec_()

     

    #PyQt5,#Python,#python gui,#qt designer,#QThread,#파이썬,#파이썬GUI

    728x90

    '파이썬' 카테고리의 다른 글

    Crawling 2 , fast  (8) 2022.06.16
    Python Flask CORS ,Crawling  (0) 2022.06.14
    Flask에서 Ajax ,axios예제  (0) 2022.06.13
    pymysql -22.06.08-22.06.09  (0) 2022.06.09
    오목게임 만들기-22.06.03~22.06.07  (0) 2022.06.07
Designed by Tistory.