Мазмуну:
- 1 -кадам: GUIге киришүү
- 2 -кадам: Өздүк эсептегичти түзүү
- 3 -кадам: Процесс
- 4-кадам: Кошумча Мазмун (Part 1-Dialogue Box Exception Handling)
- 5-кадам: Кошумча Мазмуну (Part 2-EXE түзүү)
- 6 -кадам: Жыйынтык
Video: Python аркылуу биринчи жөнөкөй программаны кантип жасоо керек: 6 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Салам, бул Нускамаларга кош келиңиз. Бул жерде мен кантип программаны өз колуң менен жасоону айтып берейин. Ооба, эгер сизде идея бар болсо … бирок аны ишке ашырууну билсеңиз же жаңы нерселерди жасоого кызыксаңыз, анда ал сиз үчүн ……
Шарты: Python боюнча негизги билимге ээ болушу керек …. LOL Мындай эч нерсе жок, "Эгер аракет кылсаң бул дүйнөдө кыйын эч нерсе жок"
нерселерди жасоо үчүн жөнөкөй кызыгуу менен программаңызды баштоого өтсөңүз болот. Башында менде деле питон жөнүндө эч кандай түшүнүк жок болчу.
Мындан тышкары, электрик катары мен коддоодон коркчумун. Акырындык менен менталитетимди өзгөрттүм.
Эгерде сиз программалоодо башталгыч болсоңуз, анда python менен баштаңыз, үйрөнүү тез ийри кылат жана чыгаруу абдан тез болгондуктан, сиз үйрөнүүгө абдан толкунданып кетесиз.
Макул, көп убакытты текке кетирбей, темага өтсөк болот.
Бул жерде мен үйрөткүчтө гана python менен кантип жөнөкөй GUI жасоо керектигин жана аны кантип "exe" менен программалык камсыздоого айлантууну жана python коддоосу менен көп эмес бөлүшөм ….. сиз Python курсун үйрөнүү үчүн youtube же udemyге кайрылсаңыз болот
бул жерден python орното аласыз:
1 -кадам: GUIге киришүү
Биринчиден, биз GUI башташыбыз керек. Бардык коддоруңуз үчүн Графикалык Колдонуучу Интерфейсинен башка эч нерсе жок.
Башкача айтканда, сиз программаны буйрук сабында иштетип, ошол эле чыгарууну алгандырсыз. Бирок кодуңуз колдонуучу менен өз ара аракеттениши үчүн сиз менен байланышуу үчүн интерфейс керек.
Python менен GUI түзүү абдан оңой … Баштайлы
Питондо көптөгөн модулдар бар, аларды GUI импорттоого жана коддоого болот. Tkinter-бул питон үчүн орнотулган GUI, бул сиздин питон программаңыз менен орнотулган. Ошондой эле, сиз PyQT, Kivy аракет кылсаңыз болот (кросс-платформа үчүн эң жакшы, башкача айтканда pythonдогу ошол эле кодду apk, exe же MAC программасын түзүүдө колдонсо болот)
Мына бул Нускамада мен Tkinterди колдоном. Pythonдогу жөнөкөй нерсе, сиз башка python файлдарын өзүңүзгө импорттой аласыз, сиз Tkinter питонун импорттооңуз керек, C сыяктуу #include окшош.
Tkinter импортунан *импорттоо Tkinter импорту tkMessageBox top = Tk () L1 = Label (top, text = "HI") L1.pack (side = LEFT) E1 = Entry (top, bd = 5) E1.pack (side = RIGHT)) B = Баскыч (үстү, текст = "Салам",) B.pack ()
top.mainloop ()
Түшүндүрмөлөр:
бул жерде Tk () классындагы классты билдирет
Tkinter модулу биз инициализацияны жогору карай сактайбыз, Label - бул текстти басып чыгаруу ыкмасы (башка тилдердегидей), Кирүү ыкмасы бош жазууну түзүү жана
Баскыч - бул баскычты түзүү, ушунчалык жөнөкөй …
пакет - бул макеттин баарын пакеттөөнүн ачкычы …. акыры негизги цикл GUI жабылмайынча бардыгын көрүнүп турат
2 -кадам: Өздүк эсептегичти түзүү
Эми биз баскычтары бар жөнөкөй GUIди көрдүк, андыктан эмне үчүн күтөбүз, баскычтары бар жөнөкөй эсептегичти курууну баштайлы.
Эскертүү:
Кодду түзүүнүн көптөгөн жолдору болушу мүмкүн, бул жерде мен үчүн оңой болгон кодду гана көрсөтөм
Sub 1 -кадам: GUI түзүү
Кодго өтүүдөн мурун биз эсептегич колдонмосу үчүн GUI түзө алабыз.
Бул жерде мен түшүнүү үчүн бир гана баскычты жана 4 катарлуу жазууну колдоном.
Ошентип, биз мурунку кадамда жараткан ар бир энбелгинин, жазуунун жана баскычтын жөнөкөй көчүрмөсү … Коддун узундугу боюнча паника кылбаңыз …! хаха
Tkinter импорт *импорт Tkinter импорт tkMessageBox
top = Tkinter. Tk () L1 = Label (top, text = "My calculator",). тор (катар = 0, мамыча = 1) L2 = Label (top, text = "Number 1",). grid (катар = 1, мамыча = 0) L3 = Белги (үстү, текст = "Сан 2",). Тор (катар = 2, мамыча = 0) L4 = Белги (үстү, текст = "Оператор",). Тор (катар = 3, мамыча = 0) L4 = Белги (үстү, текст = "Жооп",). Тор (катар = 4, мамыча = 0) E1 = Кирүү (өйдө, bd = 5) E1.grid (катар = 1, мамыча = 1) E2 = Entry (top, bd = 5) E2.grid (row = 2, column = 1) E3 = Entry (top, bd = 5) E3.grid (row = 3, column = 1) E4 = Entry (top, bd = 5) E4.grid (катар = 4, мамыча = 1) B = Баскыч (үстү, текст = "Тапшыруу",). тор (катар = 5, мамыча = 1,)
top.mainloop ()
Sub 2 -кадам: Негизги код
Бул жерде биздин учурда эмне болушу керек … 2 санды киргизип, алардын ортосундагы операцияны көрсөткөндөн кийин, жоопту басып чыгаруу же жооп жазуусунда көрсөтүү керек.
1. тапшыруу баскычы буйругу:
Биз иштелип чыккан ыкманы чакыруу үчүн баскычка буйрук беришибиз керек. Көрөлү…
B = Баскыч (үстү, текст = "Тапшыруу", буйрук = иштетүү). Тор (катар = 5, мамыча = 1)
def proces (): number1 = Entry.get (E1) number2 = Entry.get (E2) operator = Entry.get (E3)
Бул жерде мен Метод (функция) процессин атадым, андыктан баскычты баскандан кийин программа жөнөкөйлөтүлгөн түрдө функция процессинин эшигин кагат.
жана бул жакка келүү колдонуучу киргизген маанини алуу дегенди билдирет. Ошондой эле, мен 3 өзгөрмөлөрдө, тактап айтканда, номер1, сан2, оператор катары сактадым
Процессти сактап калганымдын мааниси үчүн, сиз каалооңузга жараша методдун атын сактап кала аласыз.
3 -кадам: Процесс
Бул кадамда, биз колдонуучудан алынган маалыматты иштетишибиз керек, Бирок, демейки боюнча, алынган маани сап болуп саналат.
Ошентип, кантип бүтүн санга айландыруу үчүн эсептөөнү жүргүзүш керек? …
Мээни кысуу үчүн C же C ++ эмес, питон эмес, тынчсыздануунун кереги жок.
Жөн гана int (өзгөрмө) өзгөрмөсүн киргизиңиз
number1 = int (number1) number2 = int (number2)
Ошентсе да, дагы бир көйгөй бар … кантип иштөө үчүн оператордун маанисин кантип алуу керек (+, -*/сыяктуу) ???
Болгону эгерде ар ким үчүн билдирүү жасаңыз жана ичинде эсептөөлөрдү жасаңыз.
number1 = int (number1) number2 = int (number2) if if operator == "+": answer = number1+number2 if operator == "-": answer = number1-number2 if operator == "*": answer = number1* 2 саны эгер оператор == "/" болсо: жооп = саны1/сан2
Питондогу сап "" менен белгиленет, эгер биз колдонуучудан алынган сап операторун +, -, */ etc сапына текшерип, натыйжаны жооптун өзгөрмөсүндө сактасак.
Эми акыры биз жоопту жазууга чыгарууну жөнөтүшүбүз керек, бул киргизүү коду менен жасалат.
Entry.insert (E4, 0, жооп)
Ошентип, акыры биздин код мындай көрүнөт:
Tkinter импортунан *импорттоо Tkinter импорту tkMessageBox def proces (): number1 = Entry.get (E1) number2 = Entry.get (E2) operator = Entry.get (E3) number1 = int (number1) number2 = int (number2) if оператор == "+": жооп = саны1+саны2 болсо оператор == "-": жооп = саны1-саны2 болсо оператор == "*": жооп = саны1*саны2 болсо оператор == "/": жооп = саны1/ number2 Entry.insert (E4, 0, жооп) басып чыгаруу (жооп)
top = Tkinter. Tk ()
L1 = Белги (үстү, текст = "Менин эсептегичим",). Тор (сап = 0, мамыча = 1) L2 = Белги (үстү, текст = "Сан 1",). Тор (катар = 1, мамыча = 0) L3 = Белги (үстү, текст = "Сан 2",). Тор (катар = 2, мамыча = 0) L4 = Этикет (үстү, текст = "Оператор",). Тор (катар = 3, мамыча = 0) L4 = Белги (үстү, текст = "Жооп",). Тор (катар = 4, мамыча = 0) E1 = Кирүү (үстү, bd = 5) E1.grid (катар = 1, мамыча = 1) E2 = Кирүү (үстү, bd = 5) E2.grid (катар = 2, мамыча = 1) E3 = Кирүү (өйдө, bd = 5) E3.grid (катар = 3, мамыча = 1) E4 = Кирүү (өйдө, bd = 5) E4. тор (катар = 4, мамыча = 1) B = Баскыч (үстү, текст = "Тапшыруу", буйрук = процесстер). тор (катар = 5, мамыча = 1,)
top.mainloop ()
WOW, сиз калькулятордун кодун ийгиликтүү түздүңүз …….. !! Майрамдоо убактысы келди..
4-кадам: Кошумча Мазмун (Part 1-Dialogue Box Exception Handling)
Башы Техникалык нерсе окшойт …? Сөзсүз түрдө мен сизге эмне үчүн болгон окуяны айтып бербейм …
Сиз бул эсептегичти жасап, досуңузга көрсөтүңүз.
Ал атактуу адам, ал цифраларга тамгаларды киргизген бүтүн санды жазуунун ордуна, силерге балдар … эмне кылыш керек …? python каталарды чыгарат жана дароо токтойт ….
Бул жерде питондордун өзгөчө иштөө процесси келет, ошондой эле көптөгөн программалык камсыздоолордо жана веб -баракчаларда эскертүү же эскертүү билдирүүлөрү пайда болот
Pythonдо өзгөчө кырдаалдарды иштетүү
Өзгөчөлүктөрдү иштетүү жөнөкөй эле аракет кыл, эгерде кандайдыр бир ката эскертүү көрсө
Консоль "Тамга катасы" деп жазылган тамгалардын маанисин териңиз, андыктан ал үчүн эскертүү жасай алабыз
Келгиле, биздин коддо кантип кылууну карап көрөлү:
def proces (): аракет кылыңыз: number1 = Entry.get (E1) number2 = Entry.get (E2) operator = Entry.get (E3) number1 = int (number1) number2 = int (number2) if operator == "+": жооп = саны1+саны2 болсо оператор == "-": жооп = саны1-саны2 болсо оператор == "*": жооп = саны1*саны2 болсо оператору == "/": жооп = саны1/саны2 Entry.insert (E4, 0, жооп) басып чыгаруу (жооп) ValueErrorдон башка: tkMessageBox.showwarning ("Эскертүү", "Бүтүн санга маанини киргизиңиз")
Бул жерде биз жөнөкөй эскертүү диалог кутучасын жасадык жана бул жерде мурдагыдай эле tkMessageBox.showwarning - бул Ткинтер үчүн колдонуучунун эскертүүсү жана кашаанын ичинде эскертүү диалог кутусунун башын билдирет, экинчиси билдирүүнү көрсөтөт.
5-кадам: Кошумча Мазмуну (Part 2-EXE түзүү)
Питон кодуңузду түзгөнүңүздү жана каталарды оңдоодон кийин толугу менен иштеп жатканыңызды эске алуу менен … бирок акыркы көйгөй бар, эгер сиз питон кодуңузду башкалар менен бөлүшкүңүз келсе, анда алар python орнотулган болушу мүмкүн эмес. Эгерде сиз кодуңузду ачыкка чыгаргыңыз келбесе, анда EXE түзүүнүн эң жакшы жолу.
Ошентип, аткарылуучу (exe) версиясын же Apkти (Android үчүн) түзүү үчүн бул сиздин кодуңузду тоңдуруу аркылуу жасалышы керек.
Кодуңузду тоңдуруунун көптөгөн варианттары бар, мен сунуштайм, Pyinstaller.
1 кадам:
www.pyinstaller.org/ Бул жерден орнотуңуз жана түшүнбөсөңүз, алардын кадамдарын аткарыңыз, pyinstaller программасын орнотуу үчүн трубка сабактарын көрүңүз.
2-кадам:
Андан кийин коду бар папкага өтүңүз жана чычкан баскычында SHIFT +оң баскычын басыңыз жана OS версияңызга жараша буйрук сабында же күч кабыгында ачууну басыңыз.
python pyinstaller.py --noconsole yourscript.py
pyinstaller.exe -бир файл -терезе -аты myapps --icon = yourico.ico yourscript.py
Ошентип, сиз exo үчүн икоңузду кошуп, экинчи буйрук менен бир файлдын ичине топтой аласыз.
6 -кадам: Жыйынтык
Ошентип, акыркы программалык камсыздоону түзүү сиздин кызыкчылыгыңызда,… Окуганыңыз үчүн рахмат, мен GitHub шилтемесине акыркы кодду жана exe жүктөйм >>
Ошондой эле, мен 2 программалык камсыздоону түздүм
1. Blender Batch Renderer
Кыскача түшүндүрмө:
Blender - бул анимация программасы, биз анимациянын түрлөрүн жасоодо колдонобуз.
Чыгарууну көрсөтүү үчүн чынында эле көп убакыт талап кылынат, блендерде тыныгууга жана көрсөтүүгө эч кандай мүмкүнчүлүк жок, ошондуктан мен ага программалык камсыздоо жасадым … Бул бир аз оңой ….. эч кандай жардамсыз башында коддоо мен үчүн өтө кыйын эмес…акырында жетише алды. (эгер аракет кылсаңыз, мага эч нерсе кыйын эмес экенин үйрөттү).
2. Электрондук барабан Ардуинону компьютерге туташтырат
Кыскача түшүндүрмө:
Бул Arduino пьезо сенсорун окуй турган программа жана python программасы музыканы ошого жараша ойнотот. (Бул көптөн бери сураган досум үчүн жасалган.)
Бул Нускамалык программа мен түшүнгөндөй питондон программалык камсыздоону түзүү үчүн киришүү,…. Кечиресиз, эгер мен кандайдыр бир бөлүгүндө жаңылган болсом, башталгыч катары мени комментарийлерде оңдоңуз.
Сураныч, менин you tube каналына жазылыңыз, келечектеги видеолор үчүн инженердин ойлору: Инженердин ойлору
Мен дагы веб -сайтыма кошом: www.engineerthoughts.com
Жакында мен программалык камсыздоом үчүн окуу куралын жасайм.
Комментарийлер бөлүмүндө кандайдыр бир күмөн саноону сурансаңыз болот. Бул окуу куралы сизге пайда алып келсе, мен бактылуу болом
Кудайга жана баарына рахмат
бактылуу бол, Кудай сени менен … баардык жакшылыктарды
Сүйүү менен
(Н. Аранганатан)
Сунушталууда:
Кантип ESP32 менен ESP8266 аркылуу ESP-NOW аркылуу бир нече ESP сүйлөшүүлөрүн жасоо керек: 8 кадам
Кантип ESP32 жана ESP8266 аркылуу ESP-NOW аркылуу бир нече ESP сүйлөшүүлөрүн жасоо керек: Менин иштеп жаткан долбоорумда, роутерсиз бири-бири менен сүйлөшүү үчүн мага бир нече ESP керек. Бул үчүн, мен ESP-NOW аркылуу ESP роутери жок бири-бири менен зымсыз байланыш түзүү үчүн колдонуп жатам
GPRS аркылуу TCP/IP туташуусу: SIM900A модулу аркылуу серверге маалыматтарды кантип жөнөтүү керек: 4 кадам
GPRS аркылуу TCP/IP туташуусу: SIM900A модулун колдонуп серверге маалыматты кантип жөнөтүү керек: Бул окуу куралында мен sim900 модулун колдонуп TCP серверине маалыматтарды кантип жөнөтүү керектигин айтып берейин. Ошондой эле биз серверден кардарга маалыматтарды кантип аларыбызды көрөбүз (GSM модулу)
Эч кандай программаны колдонбостон жүктөлүүчү USB дискти кантип түзүү керек: 3 кадам
Эч кандай программаны колдонбостон жүктөлүүчү USB дискти кантип түзүү керек: Жүктөлүүчү USB дискти кол менен түзүү үчүн, биз Windowsтун демейки программасы катары Command Prompt колдонобуз. Бул жерде Windows орнотуу каражаты катары жүктөлүүчү USB дискти түзүү үчүн этап -этабы менен. Windows жүктөөчү USB дискти жүктөө үчүн, мен
CH340 UART Serial Converter кабелин колдонуу менен программаны же кодду Arduino Pro Miniге кантип жүктөө керек: 4 кадам
CH340 UART сериялык конвертер кабелин колдонуу менен программаны же кодду Arduino Pro Miniге кантип жүктөө керек: USB TTL Serial кабели USB менен сериялык UART интерфейстеринин ортосундагы байланышты камсыз кылган сериялык конвертер кабелдеринин USB диапазону. 5 вольт, 3,3 вольт же колдонуучу белгилеген сигналдын деңгээлинде туташууну сунуштаган бир катар кабелдер бар
Универсалдуу ПКБда Программаны кантип жаңыртуу керек: 4 кадам
Универсалдуу ПКБда программалык камсыздоону кантип жаңыртуу керек: Универсалдуу PCB (кыскача UPCB) долбоору бир оюн контроллерине, айрыкча таяктар менен күрөшүүгө мүмкүн болушунча көп консолго уруксат берүү үчүн башталган. Долбоор тууралуу маалыматты Shoryuken.com сайтынан төмөнкү жиптен тапса болот