क्या UI को विकसित करने के लिए पायथन एक अच्छा विकल्प है? यदि हां, तो wxPython या Tkinter?


12

मैं पायथन का उपयोग करके एक डेस्कटॉप एप्लिकेशन विकसित करने के लिए उत्सुक हूं। मैं एक शुरुआत कर रहा हूँ और मेरे पास पाइथन में पर्याप्त विशेषज्ञता नहीं है। मैं जावा प्रोग्रामर भी हूं। हालाँकि मुझे स्विंग का उपयोग करके UI बनाने में कुछ अनुभव है, लेकिन मैं देखता हूं कि स्विंग पर विकसित ऐप बहुत धीमे हैं। वैसे यह एक कारण हो सकता है कि कई बड़े कार्यान्वयन सी / सी ++ में किए जाते हैं जैसे कि ब्राउज़र / गेम्स में।

C ++ में UI विकसित करना एक बेहतर विकल्प हो सकता है लेकिन मैं C / C ++ पर उच्च स्तरीय प्रोग्रामिंग भाषा को चुनना पसंद करता हूं। इसलिए मैंने पायथन के लिए चुना है कि यह जावा स्विंग पर अच्छा प्रदर्शन करेगा क्योंकि पायथन खुद ही मूल रूप से C / C ++ पर बनेगा।

तो क्या मैं इस धारणा के साथ आगे बढ़ सकता हूं कि पायथन यूआई विकसित करने के लिए जावा स्विंग से बेहतर है? या क्या आप एक ऐसी भाषा सुझाते हैं जो UI को विकसित करने के लिए पायथन से बेहतर है? यदि मैं पायथन के साथ आगे बढ़ता हूं, तो मुझे टूलकिट या wxPython का उपयोग किस टूलकिट में करना चाहिए और क्यों?


4
आपकी धारणाएँ त्रुटिपूर्ण लगती हैं। अजगर C / C ++ पर बनाया गया है, लेकिन ऐसा JVM (सबसे अधिक संभावना) है।
user281377

Tkinter और wxPython के लिए खुद को सीमित क्यों करें?
Anto

2
मैं खुद को सीमित करने की कोशिश नहीं कर रहा हूं। मैं इस धारणा के तहत था कि ये जीयूआई विकास के लिए दो प्रसिद्ध टूलकिट थे।
वामसी इमनी

GUIs को विकसित करने के लिए लाजरस आईडीई, फ्री पास्कल कम्पाइलर और ऑब्जेक्ट पास्कल बहुत तेज और आसान तरीका है।
systemovich

जवाबों:


15

मैंने अभी अजगर का उपयोग करते हुए एक विंडोज़ डेस्कटॉप ऐप का विकास शुरू किया है। मैं PyQt का उपयोग कर रहा हूँ ।

इसे स्थापित करना और उठना और चलाना बहुत आसान है। यहाँ ट्यूटोरियल: http://zetcode.com/tutorials/pyqt4/firstprograms/ दिखाता है कि मैं कितना आसान हूँ, मैं कोड लिखूँगा:

#!/usr/bin/python

# simple.py

import sys
from PyQt4 import QtGui

app = QtGui.QApplication(sys.argv)

widget = QtGui.QWidget()
widget.resize(250, 150)
widget.setWindowTitle('simple')
widget.show()

sys.exit(app.exec_())

कि तुम एक खिड़की हो जाता है।

मैंने C # / WPF पर पायथन / PyQt को चुना क्योंकि मैं अजगर सीखना चाहता हूं और मेरे नियोक्ता मुझे समय दे रहे हैं।

मेरे प्रबंधक ने अन्य रूपरेखाओं पर मेरे लिए PyQt की सिफारिश की, क्योंकि उनके अनुभव में इसका उपयोग करना आसान है।


2
वहाँ भी pyside ( pyside.org ) है, देखें stackoverflow.com/questions/1297660/pyside-vs-pyqt
कोडेपी

मैंने पहले PySide का उपयोग किया है और यह बहुत अच्छी तरह से काम करता है। हालाँकि PySide का भविष्य का विकास थोड़ा अधर में है क्योंकि Nokia ने Qt को बेच दिया है।
झटके

5

यदि आप विंडोज या OSX के लिए एक देशी GUI विकसित करना चाह रहे हैं, तो मैं आपको Tkinter (यानी, GUI लाइब्रेरी Tk पर पाइथोनिक कपड़ों के साथ) का उपयोग करने की सलाह दूंगा क्योंकि यह आपको wxPython (python के लिए wxWidgets) की तुलना में देशी लुक के बहुत करीब मिलता है। । मुझे यह आसान नहीं लग रहा है, लेकिन मेरी नज़र में विंडोज और OSX स्क्रीनशॉट । YMMV। मुझे पता है कि Tk ( महत्वपूर्ण: Ttk विजेट सेट के साथ) बहुत दृढ़ता से देशी है।

यदि आप लिनक्स के लिए विकसित कर रहे हैं ... मैं वास्तव में ईमानदारी से एक दूसरे पर सलाह नहीं दे सकता, जैसा कि मैंने ट्रैक खो दिया है कि वर्तमान पसंदीदा प्लेटफ़ॉर्म लुक क्या है। :-)


1
ध्यान दें कि Tkinter बॉक्स के बाहर आमतौर पर उपयोग किए जाने वाले कई विजेट प्रदान नहीं करता है। उदाहरण के लिए, यदि आप एक प्रगति पट्टी चाहते हैं, तो आपको या तो स्वयं लिखना होगा या किसी और को लिखा हुआ खोजना होगा।
जेम्स

1
प्रतीक्षा करें, लेकिन wxWidgets मूल GUI तत्वों का उपयोग करता है। कम से कम, C ++ बाइंडिंग करते हैं। मैं अजगर के बारे में इतना निश्चित नहीं हूं।
झोआओ माओ

@ZhehaoMao wxWidgets देशी और गैर-देशी तत्वों का मिश्रण है। कुछ तत्व मूल निवासी के समान दिखते हैं, लेकिन वास्तव में अधिक समान एपीआई के लिए कस्टम-निर्मित होते हैं।
ह्यूबर्ट ग्रेज्सकोविएक

3

मैं कहूंगा कि यह एक अच्छा विकल्प है यदि आप पहले से ही जानते हैं और पाइथन को पसंद करते हैं। अन्यथा, आपके द्वारा पहले से ही जानी जाने वाली भाषा का उपयोग करें, जो जावा है। यहाँ एक अपवाद यह है कि यदि यह एक सीखने की परियोजना है, तो इस मामले में मैं सुझाव दूंगा कि अन्य भाषाओं के साथ अनुभव प्राप्त करना एक अच्छा विचार होगा।

यहाँ मेरा कहना यह है कि पायथन वास्तव में यूआई अनुप्रयोगों के लिए जावा से बेहतर या बुरा नहीं है, इसलिए आप जिस भी उपकरण के साथ काम करना चाहते हैं, उसका उपयोग करें।


1

एकमात्र वास्तविक सलाह जो इस तरह के सभी सवालों के लिए दे सकती है, वह है "इसे आज़माएं और देखें कि क्या आपको यह पसंद है" - प्रोग्रामिंग भाषाओं पर अन्य लोगों की राय (विशेषकर उनकी सबसे अधिक पसंद की जाने वाली या सबसे अधिक नफरत वाली भाषाएं हो सकती हैं) शायद ही कभी अधिक मूल्य की हों। ।

हालांकि, मेरे 5 सेंट लायक - जल्दी, सरल विंडोज जीयूआई खटखटाने के लिए, पायथन और wxWidgets का संयोजन बहुत अच्छा काम करता है। लेकिन जैसा कि मैंने कहा, इसे अपने लिए आज़माएं - आप एक या दो घंटे में कुछ सरल और उपयोगी डाल सकते हैं, वो भी बिना पायथन अनुभव के (मैं निश्चित रूप से बहुत ज्यादा नहीं है)।


1

यदि कोई खोज इंजन के माध्यम से यहां समाप्त होता है: आप पेज जनरेटर का उपयोग करके जल्दी से कुछ टिंकर उदाहरण उत्पन्न कर सकते हैं। यह कुछ सभ्य कोड उत्पन्न करता है जो आपको यह विचार देगा कि आप जहां जाना चाहते हैं उसे प्राप्त करने में क्या लगेगा। यह निश्चित रूप से आपको सामान्यता से परिचित कराने की आवश्यकता है, जैसा कि लेखक बताता है, लेकिन किसी व्यक्ति को पानी का परीक्षण करना चाहते हैं या सामान्य विचार प्राप्त करना चाहते हैं कि वे कहां जा रहे हैं यह एक अच्छा उपकरण है। SourceForge पर पेज


-1

मुझे लगता है कि कुछ प्रकार के अनुप्रयोग पायथन में लिखने के लिए काफी प्रबंधनीय हैं।

उदाहरण के लिए टास्क कोच पायथन / wxPython में लिखा गया है। क्रॉस-प्लेटफॉर्म, देशी-दिखने वाले निष्पादनयोग्य बनाने के लिए वे py2app, p22exe आदि जैसे पायथन 2 एक्सई कंपाइलर का उपयोग करते हैं।


-1

यदि आप विंडोज इकोसिस्टम में विकसित करने के लिए प्रतिबंधित हैं, और विजुअल स्टूडियो का उपयोग करते हैं, तो आयरन पायथन पर विचार करें। आयरन पायथन पायथन प्लस .NET ऑब्जेक्ट्स हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.