د پیتون + کیټ # 1 سره لومړی ګامونه

دا ټیوټوریل د QT چوکاټ کارولو باندې تمرکز کوي چې د Python په کارولو سره د برنامو ژبې په توګه کاروي ، د دې لپاره موږ کولی شو دواړه PySide او PyQt وکاروو ، مګر پدې ټیوټوریل کې به موږ PySide وکاروو ځکه چې د دې ټیوټورل لیکوال د LGPL PySide لایسنس غوره خوښوي. د GPL یا PyQt کمرشل څخه.

لومړی ... پایګن څه شی دی؟

د ویکیپیډیا په وینا:

"پایتون یوه د لوړې کچې تشریح شوې برنامه ژبه ده چې فلسفه یې په خورا پاک ترکیب ټینګار کوي او د لوستلو وړ کوډ غوره کوي."

پایتون یو ضرب الاجل پروګرامګیزه ژبه ده ، نو دا د بیلابیلو پراګون پروګرام کولو پاراډیمونو ملاتړ کوي ، د بیلګې په توګه دا ملاتړ کوي: آبجیکٹ اورینټډ پروګرامینګ (OOP) ، تطبیق کونکي برنامه (جوړ شوی) او تر یوې اندازې پورې فنکشنل برنامې.

فقط هغه؟

نه ، دا د متحرک ټایپینګ ژبه هم ده ، پدې معنی چې اجنټ موږ ته اجازه راکوي چې د برنامه پلي کولو پرمهال ورته متغیر ته مختلف ډولونه ارزښتونه وټاکو ، ځینې یې د ګټې په توګه ګوري ، نور یې د زیان په توګه ګوري ، د ځان لپاره وګورئ.

د هغه څه سربیره چې دمخه یې یادونه وشوه ، پیوټون موږ ته اجازه راکوي (د ډیری نورو په څیر) ، په ویب چاپیریال او ویب ډیسټاپ کې دواړه برنامه کول ، دا هم کراس پلیټ فارم دی ، اوس مهال دا د Gnu / Linux ، وینډوز ، ماک آکس ، Android ملاتړ کوي (که تاسو اړتیا لرئ د دوی لپاره یې یادونه وکړئ ترمیم کول).

QT څه شی دی؟

QT یو څو پلاتفورم چوکاټ دی ، چې اصلا د نوکیا لخوا رامینځته شوی ، وروسته بیا ډیجیا ته وپلورل شي ، کوم چې د غوښتنلیک پراختیا لپاره کارول کیږي ، دا په C ++ کې لیکل شوی ، مګر د Bindings له لارې په نورو ژبو کې کارول کیدی شي (زموږ په قضیه کې PySide یا PyQt )

د PySide او PyQt ترمنځ توپیرونه

په عمده توګه

  • لایسنس ، پایسایډ د LGPL د شرایطو سره سم جواز لري او پی کی کی ټی د GPL شرایطو لاندې یا د سوداګریز جواز لاندې دی ، نو موږ به د تړل شوي غوښتنلیک رامینځته کولو په صورت کې تادیې ته اړتیا ولرو.
  • پیزایډ د نوکیا لخوا رامینځته شوی ، او پییاکټ د سیند بینک لخوا رامینځته شوی.
  • पायسایډ موږ هرکله د QT څیزونو QString کارولو په وخت کې د ST کارول کارولو ستونزه خوندي کوي.

موږ کولی شو بشپړ بدلونونه توضیح کړو اکیو.

چمتووالى:

موږ Qt نصب کوو:

که موږ د Kde سره ګډوډي ولرو نو موږ باید لا دمخه هغه څه ولرو چې موږ ورته اړتیا لرو ، که نه:

sudo apt-get qt4-dev-اوزار نصب کړئ

موږ पायساید نصب کوو:

sudo apt-get install pyside pyside-tools

زموږ لومړی پایتون + QT غوښتنلیک

موږ زموږ د غوره متن مدیر ته ځو ، زه وړاندیز کوم چې تاسو sublime-Text2 نصب کړئ ، مګر تاسو کولی شئ هغه یو وکاروئ چې تاسو غوره ګ preferئ ، او موږ لاندې کوډ ټایپ کوو او دا د هغه نوم سره خوندي کوو چې موږ یې غواړو تل د توسیع ".py" سره پای ته ورسوو ، زه به زه به د app1.py په توګه خوندي کړم:

3

کوډ وګورئ

موږ دا د دې په څیر کنسول څخه پرمخ وړو:

python app1.py

دا کړکۍ باید څرګند شي

 

2

 

څه؟ یوازې دا ، ځکه چې که تاسو دمخه یوازې کنسول درلود ، تاسو د کوم شی په اړه شکایت کوئ؟ تاسو څه تمه درلوده ، یو ارپ؟ سړی د یو څه لپاره پیل کوي.

اوس راځئ چې کوډ تشریح کړو:

from PySide.QtGui import *

from sys import exit, argv

دلته موږ د PySide اجرا کولو لپاره اړین ماډلونه واردوو.

app = QApplication(argv)

موږ د نوم ایپ سره Qapplication مثال رامینځته کوو.

window = Qwidget()

موږ د QWidget () مثال رامینځته کوو.

window.setWindowTitle("Primera App PySide")

موږ د میتود وینډو ټایټل پلي کوو ، کوم چې زموږ د Qwidget سرلیک "تنظیم" کولو لپاره د پیرامیټر په توګه سټینګ ترلاسه کوي.

window.show()

موږ خپله کړکۍ ښیو

exit(app.exec_())

په نهایت کې موږ زموږ د QApplication () د اجرا کولو لامحدود دوران اجرا کوو.

Gracias

د دوی لپاره مننه کوم چې دلته ما تعقیب کړي او ګټور ثابت شوي. د راتلونکي ټیوټوریل لپاره زه به تشریح کړم چې څنګه زموږ د وینډوز د QT ډیزاینر سره ډیزاین او زموږ پروژې ته یې وارد کړئ.

سربیره پردې زه د لینکس څخه په فورم کې لینک اضافه کوم چیرې چې زه د پیتان ټیټوریلونو او لارښودونو کوچني کتابتون سره کوچنۍ موضوع لرم چې پدې کې بیلابیل اصطلاحات شامل دي چې پکې شامل دي:

اساسی تیورونه

wxPython

PyQt او PySide

Django

web2py

په عجیب کې علمي برنامې.

او ډیر نور.

فورم ته لینک

زه امید لرم چې دوی ستاسو خدمت کوي ، زه الوداع ووایم ، لکه څنګه چې تل د خوښۍ سره چې پدې عالي ټولنه پورې تړاو لري.

 


د مقالې مینځپانګه زموږ د اصولو سره سمون لري ایډیټیک اخلاق. د غلطۍ راپور ورکولو لپاره کلیک وکړئ دلته.

41 نظرونه ، خپل پریږدئ

خپله نظر پرېږدئ

ستاسو د بریښنا لیک پته به خپره نه شي.

*

*

  1. د معلوماتو لپاره مسؤل: میګیوانجل ګاتین
  2. د معلوماتو هدف: د سپیم کنټرول ، د نظر مدیریت.
  3. قانونیت: ستاسو رضایت
  4. د معلوماتو راټولول: معلومات به د قانوني مکلفیت پرته دریمې ډلې ته نه لیږدول کیږي.
  5. د معلوماتو ذخیره: ډیټابیس د Occentus شبکې (EU) لخوا کوربه شوی
  6. حقونه: په هر وخت کې تاسو کولی شئ خپل معلومات محدود ، له سره تنظیم او حذف کړئ.

  1.   @ باور 17 dijo

    د پوسټ لپاره مننه!

  2.   انوبیس dijo

    دوه شیان:

    1. Qt په اصل کې د نوکیا لخوا نه و تیار شوی ، مګر د ټرولټیک لخوا ، چې وروسته د نوکیا لخوا اخیستل شوی. وروسته بیا Qt په ډیجیا وپلورله.
    2. د لومړي غوښتنلیک مثال کې عکس له کوډ سره سمون نه خوري.

    د ټیوټر څخه مننه ، زه به یې تعقیب کړم 🙂

    1.    F3niX dijo

      تاسو بالکل صحیح یاست او دوهم شی چې تاسو یې هم سم یاست ، ایا دا ما بدل کړی ترڅو دا اسانه کړي او له ټولګی نه کار واخلم او ما د ترمیم یادونه ، پیلي خطاګانې له لاسه ورکړ. زه دمخه د ځینې مدیر لپاره د هغوی تصویب لپاره اصلاحات تېروم.

    2.    F3niX dijo

      زه نشم بدلولی ، زه دا ځینې مدیر ته پریږدم.

      مننه.

      1.    neysonv dijo

        د سمې ښوونې سره مدیر ته بریښنالیک ورکړئ. تاسو کولی شئ دا د @ نانو بریښنالیک ته واستوئ چې یو له مدیرانو څخه دی
        بریښنالیک: nano.world.contact@gmail.com
        مهرباني وکړئ ټیوټوریل ورته مه پریږدئ
        سلامونه

  3.   جرمني dijo

    یو شی ما ته زیان رسوي: ولې تاسو په خپل کوډ کې "د وارداتو * څخه" کار کوئ؟

    مننه!

    1.    F3niX dijo

      دا د واردولو سمه لاره ده ، کله چې د دې په څیر وارد کول تاسو ته ووایی چې د کوم ماډل کوم ځانګړي صنف چې تاسو غواړئ وارد کړئ ، او تاسو بشپړ انډول نه وایاست.

      مننه.

      1.    جرمني dijo

        زه دا ډول ګډوډي ګورم. سربیره پردې ، دا په PEP8 کې وړاندیز نه کیږي:

        "د وائلډ کارډ واردات (د ماډل وارداتو * څخه) باید مخنیوی وشي ، ځکه چې دوی دا روښانه نه کوي چې کوم نومونه په نومځای کې شتون لري ، دواړه لوستونکي او ډیری اتومات وسیلې مغشوشوي ..."

        1.    F3niX dijo

          زه ډیری د مسلکي کوډونو لخوا لارښود شوی یم ، لکه ننجا - ایډ ، تاسو کولی شئ دلته کوډ وګورئ: https://github.com/ninja-ide/ninja-ide/blob/master/ninja_ide/core/ipc.pyدا په PyQt کې هم ترسره کیږي ، مګر په هر ډول هیڅ شی شتون نلري چې تاسو ته اړ باسي چې یوه فورمه یا بل وکاروئ.

          دلته تاسو د دې په اړه د سټیک او فلو په اړه بحث لیدلی شئ:

          http://stackoverflow.com/questions/710551/import-module-or-from-module-import

          دلته دوی د هر سټایل مسلکي او قانون یادونه کوي.

          1.    F3niX dijo

            سمه ده بخښنه غواړم زه تاسو نه پوهیږم ، زه پوهیږم ، ما یوازې دا وکړل ځکه چې زه د هر عنصر QApplication ، QWidget توضیح نه ورکوم ، نو عمومي یې کړئ مګر تاسو بالکل سم یاست.

            د غلط فهمی معاف کول

          2.    جرمني dijo

            نه ، تاسو نه پوهیږئ یا تاسو پام نه کاوه ... زما معنی د module ماډل وارداتو * «څخه کول دي ، دا پدې مانا ده چې د« ستوري »... په هغه سټیک اوور فلو پوسټ کې دوی د یو بل په اړه خبرې کوي ، مګر دوی لاهم پدې ټینګار کوي:

            "هر ډول میتود د منلو دی ، مګر د ماډل وارداتو څخه مه کاروئ."

            ایا اوس پوه شوی؟

          3.    فلپ dijo

            الماني سمه ده. د ماډل وارداتو څخه د کارونې څه شی دی که تاسو د اسټرټیک سره ټول مینځپانګه وارد کړئ ، د دې وارد ماډل لپاره. Slds لکه ښه پوسټ.

          4.    جرمني dijo

            اه ښه ، اوس زه پوهیږم ... په هرصورت ، ما ډیر وخت مه اخلئ ، زه په پایتون کې یو نوښتګر هم یم. که تاسو زما د بلاګ له لارې لاړشئ ، نو تاسو به وګورئ چې ما ستاسو په څیر ورته پوسټ رامینځته کړی مګر د Gtk + 3 سره د پی ای جی بیجیکټ په کارولو سره.

            سلامونه او مننه!

        2.    F3niX dijo

          دلته زه Pep8 پریږدم ، په هسپانوي کې د im کارولو وړاندیز کوي
          دا د کڅوړې څخه کوډ واردولو لپاره د نسبي وارداتو کارول خورا ناگزیر دي. تل د ټولو وارداتو لپاره د کڅوړې مطلق لاره وکاروئ. حتی اوس چې PEP 328 [7] په Python 2.5 کې په بشپړ ډول پلي شوی ، د نسبي وارداتو کارول جدي هڅول شوي؛ مطلق واردات ډیر د پورټ وړ او معمولا ډیر د لوستلو وړ دي.

          کله چې له موډل څخه ټولګی وارد کړئ ، نو د دې کولو لپاره عموما سمه ده
          د مایکلاس وارد څخه MyClass
          د foo.bar.yourclass څخه خپل کلاس وارد کړئ

          مننه!

          1.    ډانټر dijo

            دا ولولئ: http://stackoverflow.com/questions/3615125/should-wildcard-import-be-avoided

            الیکس مارټیلي (اصلي پای پرمختیاپال) د دې په څیر یو څه وړاندیز کوي:


            from PyQt4 import QtCore, QtGui

  4.   msx dijo

    زه نور غواړم ، د دوهم برخې لپاره کله؟!
    سلامونه 🙂

  5.   ایلیوټیم 3000 dijo

    ډیر ښه ښوونې ، او دا ممکن برنامې ته خورا راحته وي.

  6.   ډانټر dijo

    دلته د سکریچ څخه د یو انٹرفیس مثال دی (پرته د QtDesigner کارولو).

    https://github.com/xr09/metrocontador

    1.    F3niX dijo

      د ډنټر ایپ خورا ښه دی ، دلته موږ حتی نه پوهیږو چې دوی موږ څخه د بریښنا لپاره څومره اخلي ، ها سلامونه.

      1.    ډانټر dijo

        مننه ، دا یو له هغو غوښتنلیکونو څخه دی چې یو یې د شخصي کارونې لپاره رامینځته کوي او نورو ته خدمت کوي. دلته په کیوبا کې رسید د نرخ سره مات شوی ، د الګوریتم کاپي کول اسانه دي.

  7.   جوس ایلو dijo

    زه به د دې کورس څخه ډیر خبر وم. زه د اوږدې مودې لپاره د کراس پلیټ فارم غوښتنلیکونو کې علاقه لرم او زه فکر کوم چې د Python + QT / Pyside ترکیب یو عالي انتخاب دی. د نوښت لپاره مبارکۍ او مبارکۍ

  8.   براین رودریګوز dijo

    ما ټول مرحلې په سمه توګه تعقیب کړې لکه څنګه چې تاسو وایاست مګر کله چې زه په ټرمینل کې app1.py اپلیکیشن چلوم نو دا راته ټراسیبیک (وروستی تلیفون وروستی) وایی
    فایل "app1.py" ، لمبر 1 ، په
    له PySide.QtGui وارداتو څخه *
    د وارداتو تیروتنه: د پی ای سایډ.کیټ ګوي په نوم هیڅ ماډل ندی. دا د څه لپاره ؟.

    1.    فلپ dijo

      دا ځکه چې تاسو د ډیفالټ ژباړونکي په توګه د انجن نسخه کار کوئ ، مګر تاسو د دې نسخې لپاره سایډ نه دی نصب کړی.

      د فایل په پیل کې د اضافه کولو هڅه وکړئ:
      #! usr / bin / python3
      یا نور
      #! usr / bin / python2

      زه وړاندیز کوم چې تاسو د پیډایډ سره اکسپول وکاروئ او ترجمان ښه تنظیم کړئ.
      slds

      1.    فلپ dijo

        #! / usr / بن / python3
        یا نور
        #! / usr / بن / python2

        1.    F3niX dijo

          पायسایډ لاهم د Python3 سره مطابقت نلري ، له دې سره محتاط اوسئ ، او دوهم دا چې دا د متقابل پامان کنسول له لارې واردات ګورئ ، نو تاسو پوهیږئ چې تاسو دا نصب کړی دی یا نه ، دا هم پایپ نصبوي.

          1.    براین رودریګوز dijo

            زه څنګه دا تصدیق کولی شم؟

          2.    F3niX dijo

            په کنسول کې "پیتون" وکاروئ ، په هرصورت زه تاسو ته سپارښتنه کوم کتابتون ته ننوځم چې ما په پوسټ کې لاندې پریښود او "د ټولو لپاره اذان" ډاونلوډ کړئ ، تاسو لاهم اډې ته اړتیا لرئ.

            سلامونه او نېکمرغي.

          3.    براین رودریګوز dijo

            ډیره مننه ، دا زما لپاره خورا ګټوره وه.

          4.    د موریسیو توبریز dijo

            ملګري F3niX وګورئ ما دا وموند ، داسې بریښي چې په وینډوز کې د پګون 3.3.2 لپاره (کوم چې زه یې تر راتلونکې اونۍ پورې لرم) دوی د 32 ټوټو او 64 ټوټو لپاره بائنری لري ، ما ستاسو مثال ازمویلی او دا د اجنټ 3.3.2 سره کار کوي او زه یې کاروم پی اس سکریپټر چې مختلف چاپیریالونه نصبوي ، که تاسو پایټون open خلاص کړئ دا سکریپټونه د پایټون as په څیر پرمخ وړي او که تاسو 3 خلاص کړئ نو دا د 3 په څیر اعداموي او داسې نور (په منطقي توګه تاسو باید دا د پګن نسخه نصب کړئ ... دا پوهیږي)

            http://qt-project.org/wiki/PySide_Binaries_Windows

            زه به تاسو هلته پریږدم ، ګپ شپ ، شاید دا به د بل چا خدمت وکړي 😀

      2.    براین رودریګوز dijo

        ما ورته غلطي ترلاسه کړه.

        1.    جرمني dijo

          ایا تاسو पायساید نصب کړی دی؟

          1.    براین رودریګوز dijo

            ما دا نصب کړی دی

        2.    فلپ dijo

          او د PyQT4 هڅه وکړئ ، نصب یې کړئ او بیا د PySide لینونه PyQT4 یا PyQt4 ته واړوئ ، او دا چل ورکړئ. جوجو. له کاره لوړه ګټه واخلئ. بخت

          1.    براین رودریګوز dijo

            زه دا څنګه وکړم؟

  9.   کارلنکس dijo

    ډیره مننه !!! دوهم فصل ته انتظار

    1.    F3niX dijo

      د دې جمعې لپاره زه ممکن دا خپور کړم (پوهنتون ماته یو څه بشپړ دی) سلامونه.

  10.   موریسیو ټوبارز dijo

    ملګري F3nIX زه ستاسو ټیوټر N ته انتظار یم N ° 2، 3، 4… N hehe

    زه دمخه زما خورا ښکلي لینکس د पाय سایډ انتظار او هرڅه سره نصب کړی یم!

    راځئ چې وګورو کله چې هغه د نوي ښوونکي ښودلو ته هڅول کیږي 😀

    1.    F3niX dijo

      بخښنه غواړم ملګري ، زه دا په مسودو کې لرم مګر کار او مطالعاتو ماته وخت نه دی راکړی ، زه ژمنه کوم چې پدې اونۍ کې به یو څه راوړم.

      لوی سلام

  11.   ډانتې dijo

    سلام ، زه د اوږدې مودې لپاره د ازمي په زده کړه کې علاقه لرم مګر زه یو څه شکونه لرم. هغه څه چې زه غواړم د کورنۍ سوداګرۍ د معلوماتو پروسې یو څه ښه کولو لپاره غوښتنلیک جوړ کړم چیرې چې زه کار کوم ، زه غواړم د وینډوز لپاره یو څه وکړم ، په لومړي سر کې د وینډوز سره ، دا به ټول په یوه کمپیوټر کې کار وکړي او بیا دا چې دا د انټرنیټ له لارې وصل کیدی شي ډیټابیس ته چېرې چې یو څو کمپیوټرې به وصل شي. د GUIing غوښتنلیک په شرایطو کې خورا تنوع شتون لري او دا ما ته سست کوي. تاسو څه وړاندیز کوئ چې دې ته عصري او په زړه پوري ب giveه ورکړئ؟ زه به یو څه احصایوي ګرافونه او چاپي راپورونه هم جوړ کړم ، زه د دې لپاره څه کارولی شم؟ هڅول

  12.   Jorge dijo

    سلام ، ستاسو پوسټ خورا ښه ، زه یوه پوښتنه لرم. ایا زه کولی شم پرته له کومې ستونزې پرته خپل پیپ د پلسایډ سره وپلورم؟

    1.    F3niX dijo

      ښه ، جوازونه تل لیونۍ وي ، مګر وړیا سافټویر جوازونه تاسو ته د سافټویر پلور اجازه هم ورکوي ، څه پیښیږي هغه دا چې GPL تاسو د LGPL برعکس کوډ توزیع کولو ته اړ باسي ، کوم چې تاسو دې ته مجبور نه کوي.

      په هر حالت کې ، زه د جواز ورکولو ماهر نه یم.

      مننه.