Мазмуну:

Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери: 7 кадам
Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери: 7 кадам

Video: Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери: 7 кадам

Video: Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери: 7 кадам
Video: Асель Жураева - 17 - "Даректүү тасмалардын максаты -1" 2024, Ноябрь
Anonim
Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери
Python киришүүсү - Катсухико Матсуда жана Эдвин Цижо - Негиздери

Саламатсызбы, биз MYP 2де 2 студентпиз. Биз сизге Pythonду коддоонун негиздерин үйрөткүбүз келет.

Ал 1980 -жылдардын аягында Нидерландияда Гидо ван Россум тарабынан түзүлгөн. Бул ABC тилинин мураскери катары жасалган. Анын аты "Питон", анткени ал Питон (жылан) жөнүндө ойлонгондо, "Монти Питондун Учуучу Цирки" деген китепти да окуп жаткан. Гидо ван Россум тилге кыска, уникалдуу ысым керек болот деп ойлоп, Pythonду тандады.

Берилиштер:

Компьютер жана питон коддоо программасы же веб -сайт (Сунушталат: repl.it)

1 -кадам: Комментарийлер/Хэштегтер

Комментарийлер/Хэштегтер
Комментарийлер/Хэштегтер

Комментарийлер Pythonдо колдонулушу мүмкүн болгон кошумча жазуулар. Алар төмөнкүдөй колдонулушу мүмкүн:

  • sidenotes
  • көрсөтмөлөр
  • кадамдар ж

Комментарийлерде эч кандай жыйынтык жок.

#Коддоо

2 -кадам: Басып чыгаруу жана киргизүү билдирүүлөрү

Басып чыгаруу жана киргизүү боюнча билдирүүлөр
Басып чыгаруу жана киргизүү боюнча билдирүүлөр
Басып чыгаруу жана киргизүү боюнча билдирүүлөр
Басып чыгаруу жана киргизүү боюнча билдирүүлөр

Басып чыгаруу билдирүүлөрү

Басып чыгаруу түрүндө жазылган сөздөр, сүйлөмдөрдү же сөздөрдү басып чыгаруу үчүн колдонулат. Ошентип, мисалы:

басып чыгаруу ("Hello World!")

Чыгуу мындай болмок:

Салам дүйнө!

Ошентип, сиз басма сөзү сөздөрдү же сүйлөмдөрдү басып чыгаруу үчүн колдонулганын көрө аласыз.

Киргизүү билдирүүлөрү

Киргизүү катары жазылган киргизүү билдирүүлөрү "суроо" үчүн колдонулат. Мисалы:

киргизүү ("Сиздин атыңыз ким?")

Чыгаруу мындай болмок:

Ысымыңыз ким?

Бирок, киргизүү менен, сиз аларга жаза аласыз. Сиз ошондой эле "аталышын" киргизе аласыз.

Бул сыяктуу:

name = input ("Сиздин атыңыз ким?")

Сиз муну менен жооп бере аласыз:

Ысымыңыз ким? Katsuhiko

Андан кийин табылган маалыматка бир нерсе кошуу үчүн if билдирүүсүн кошсоңуз болот.

Аларды кантип колдонууну 4 -кадамдан үйрөнөсүз.

3 -кадам: F саптары

F Strings
F Strings

басып чыгаруу (f "")

Азыр чыгаруу эч нерсе эмес. Сиз эч нерсе басып чыгарган жоксуз. Бирок муну кошуп алганыңызды айтыңыз:

басып чыгаруу (f "Hello {name}!")

Иштейт, аты аталып калганда гана. Башкача айтканда, буга чейин сизде кандайдыр бир маалымат бар болчу жана муну сиз жасадыңыз дейли:

name = киргизүү (Сиздин атыңыз ким?)

Андан кийин f сабы иштейт. Кирүү үчүн айтыңыз, сиз атыңызды жаздыңыз. Ошондо басма сөз басылып чыкканда:

Саламатсызбы (сиздин атыңыз кандай болсо да)!

Муну кылуунун дагы бир жолу - үтүр. Бул да f сабын колдонбойт. Алар да окшош. Ошентип, сиз аны кантип басып чыгарасыз:

аты = киргизүү ()

басып чыгаруу ("Салам", аты, "!")

4 -кадам: Эгерде, башка болсо (Элиф), башка билдирүүлөр

Эгерде, башка болсо (Элиф), башка билдирүүлөр
Эгерде, башка болсо (Элиф), башка билдирүүлөр

If, Else If (Elif), Else Statements колдонуп, ар кандай аталыштагы кодум.

Эгерде билдирүүлөр

Эгерде жазылган билдирүүлөр, эгер сүйлөмдөр деп аталат, түзмө -түз айтылса. Алар сүйлөм объектиге барабарбы же бир нерсеби, ал бир нерсеге эффект жаратат. Себеп жана натыйжа катары if билдирүүсүн ойлонсоңуз болот. If билдирүүсүнүн мисалы:

name = input ("Сиздин атыңыз ким?")

#атын сурасаңыз == "JBYT27": басып чыгаруу ("Салам администратор!")

Чыгаруу мындай болмок:

Ысымыңыз ким? Katsuhiko

Саламатсызбы Админ!

Бирок, жооп Кацухико болгон эмес деп айт. Бул жерде башка, elif, try, жана башка билдирүүлөр келет!

Элиф билдирүүлөрү

Элиф катары басылган Elif билдирүүлөрү, эгерде алар абдан көп. Болгону башка сөз жана эгер айкалышса. Айтыңызчы, эгер сиз дагы кошумча билдирүүлөрдү кошкуңуз келген. Анда сиз муну кылмаксыз:

эгер аты == "Катсухико":

print ("Hello Administrator!") elif name == "Coder": print ("Hello Coder!")

Бул жөн гана көбүрөөк if билдирүүлөрүн кошуу, ага башкасын кошуу !.

Башка билдирүүлөр

Башка билдирүүлөр, башкача басылган, if жана elif билдирүүлөрүнө окшош. Алар компьютерге бир нерсе андай эмес жана андай эмес болсо, бул башка натыйжага өтүңүз деп айтууга көнүшөт. Сиз муну мындай колдоно аласыз (башка жогорку коддон кийин):

эгер аты == "Катсухико":

print ("Hello Administrator!") elif name == "Squid": print ("Hello Lord Squod!") else: print (f "Hello {name}!")

5 -кадам: Жалпы модулдар

Жалпы модулдар
Жалпы модулдар
Жалпы модулдар
Жалпы модулдар

Жалпы модулдар төмөнкүлөрдү камтыйт:

  • os
  • убакыт
  • математика
  • sys
  • кайра көчүрүү
  • ташбака
  • tkinter
  • кокус
  • жана башкалар.

Ошентип, мен тизмектеген бул модулдардын бардыгын мен кантип колдонууну айтып берем, этап -этабы менен). Бирок күтө туруңуз, модулдар деген эмне?

Модулдар pythonдо алдын ала орнотулган пакеттерге окшош. Сиз жөн гана модулду толугу менен орнотушуңуз керек. Ошентип, бул код сыяктуу:

импорт os

Муну кылганда, сиз os модулун ийгиликтүү импорттойсуз! Бирок күтө туруңуз, муну менен эмне кыла аласыз? Адамдар os модулун колдонуунун эң кеңири таралган жолу - бул баракты тазалоо. Демек, ал консолун (кара бөлүгү) тазалайт, ошондуктан экраныңызды ачык кылат. Бирок, көп, көп, көптөгөн модулдар болгондуктан, сиз дагы модулду колдонуу менен экранды тазалай аласыз. Код мындай:

импорттун көчүрүлүшү

replit.clear ()

Бирок бул импорттун бир таң калыштуусу, сиз конкреттүү нерселерди жасай аласыз. Айталы, сиз математика пакетинен pi жана sqrtти гана импорттоону каалайсыз. Бул код:

математикадан импорттон pi, sqrt

Айта кетейин, муну кылганда эч качан, жана эч качан кошпогула. Импорттон… жана… сыяктуу. Жөн эле кылба:)

Кийинки убакыт модулу: Убакыт модулун төмөнкү үчүн колдоно аласыз:

  • убакыт кечигүү
  • текстти жылдыруу

Кийинки - ткинтер, ташбака

Сиз tkinter модулун GUI үчүн колдоно аласыз (экранды ойнотуу), сиз аны кадимки питонго импорттой аласыз же муну жаңы реплде жасай аласыз. Сиз ташбаканы сүрөт тартуу үчүн колдонсоңуз болот, бирок ал вебди өнүктүрүү үчүн көп колдонулбайт. Математика жана система Математика математиканы эсептөө үчүн, математиканы эсептөө үчүн колдонулат. Sys колдонулган өзгөрмөлөргө жетүү үчүн колдонулат. Мен муну сизге кантип түшүндүрөөрүмдү билбейм, бирок көбүрөөк билүү үчүн бул жерди басыңыз Random Кокус модуль өзгөрмөлөрдү жана саптарды рандомизациялоо үчүн колдонулат. Тизме рандомизация кылгыңыз келгенин айт. Бул жерде код болмок:

туш келди импорттоо

a_list = ["Катсухико", "пирог", "мышык", "ит"] random.choice (a_list)

Чыгуу өзгөрмө/тизмеден туш келди тандоо болмок. Демек, бул пирог, Катсухико, мышык же ит болушу мүмкүн. Кокус модулдан сиз импорттой турган көптөгөн нерселер бар, бирок эң кеңири тарагандары:

  • тандоо
  • диапазон
  • жана башкалар.

Дал ушул!

6 -кадам: Биринчи оюн! Random Module колдонуу

Биринчи оюн! Random Module колдонуу
Биринчи оюн! Random Module колдонуу

Эми сиз биринчи оюнду кокус модулдун жардамы менен түзөсүз.

Биринчиден, биз туш келди модулду импорттойбуз

Андан кийин биз муну жазышыбыз керек:

импорттук туш келди num2 = random.randint (1, 100) #Бул сандар 1-100дөн тандалып алынат дегенди билдирет, эгер кааласаңыз, өзгөртө аласыз = 10 #Бул оюнчу канча божомолду алат

Андан кийин биз аталышты басып чыгарабыз (Сан оюну!)

Андан кийин биз "True True" деп аталган жаңы нерсеге киребиз. Бул билдирүү кодду үзгүлтүксүз айлантууга мүмкүндүк берет.

Андан кийин биз киргизүү билдирүүсүн кошобуз:

num = int (киргизүү ("1-100 санын тапкыла / n:") #The / n кийинки сапка өтүүнү билдирет

Биз интеллектти суроолордун алдына кошобуз, ал бүтүн жооп болуп, num2 жана num менен математикалык нерселерди жасоого мүмкүндүк берет. Бул киргизүү суроосу да True True ичинде болушу керек:.

Анан биз айтабыз, эгерде num чоң болсо, анда num2 анда анын өтө бийик экенин айт жана ал сенде канча божомол калганын айтат:

if num> num2: print (f "Өтө бийик. Сизде {guesses} божомол калды") божомолдор- = 1

Андан кийин сиз ошол эле нерсени жасайсыз, бирок эгерде секундадан кийин тескерисинче (дагы деле циклдин ичинде).

if num <num2: print (f "Өтө төмөн. Сизде {болжол-1} божомол калды") божомол- = 1

Эгер сиз болжолдоолор 0го барса, экөөнү тең кошосуз, анда сиз утуласыз, жана num = num2 болсо, биз утабыз

if num == num2: print (f "Туура түшүндүңүз! Сиз {guesses-1} болжолдору калды" менен бүтүрдүңүз) break # Тыныгуу коддун токтогонун билдирет. эгер божомолдор == 0: басып чыгаруу (f "Сиз уттурдуңуз! Туура сан {num2}") тыныгуу

Бул сан табуу оюнунун коду.

Бардык коддор чогуу мындай болушу керек:

print ("Сан оюну!") Чыныгы: num = int (киргизүү ("1-100 / n санын тап")) эгерде num> num2: print (f "Өтө бийик. Сизде {guesses-1} божомол бар сол ") божомолдор- = 1 эгер num <num2: басып чыгаруу (f" Өтө төмөн. Сизде {болжол-1} божомол калды ") божомолдор- = 1 болсо num == num2: print (f" Туура түшүндүңүз! Сиз {guesses-1} болжолдору калды ") менен аяктады, эгерде болжолдор == 0: print (f" Сиз уттуңуз! Туура сан {num2} ") тыныгуу

Бул менин Санар оюнунун ремикс версиясы:

Ремикс версиясында кыйынчылык деңгээлдери жана башка сырлар бар.

Жашасын! Биз уктабай эле жетиштик!

Биздин көрсөтмөлөрдү көргөнүңүз үчүн рахмат. Сиз жаңы нерсени үйрөндүңүз деп үмүттөнөбүз.:)

Кийинки кадам - өнүккөн оюн. Кийинки кадам, сиз эмне кылып жатканыңызды түшүнүү үчүн коддун ар бир бөлүмүн түшүндүрүп берет. Бул милдеттүү эмес

7 -кадам: Катуу Force Password Cracker

Brutal Force Password Cracker
Brutal Force Password Cracker

туш келди импорттоо

белгилер = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', ' y ',' z ',' 1 ',' 2 ',' 3 ',' 4 ',' 5 ',' 6 ',' 7 ',' 8 ',' 9 ',' 0 ','!, '@', '#', '$', '%', '^', '&', '*', '(', ')', '-', '_', '+', ' = ',' ~ ',' ''] cha = '' ba = тамгалардагы пункт үчүн: cha+= пунктту басып чыгаруу ("тамгалар:"+ча)

Жогорудагы код - бул сырсөздө колдонула турган бардык белгилерди жазуучу код

password = input ("Төрт орундуу сырсөздү киргизиңиз.").lower ()

божомолдоо = Чыныгы x = 0 q = 11 w = 11 e = 11 r = 11 ондук = 0 бирдик = 1 жүз = 0 миң = 0 божомолдоодо: r+= 1 x+= 1 болсо r == 62: e+= 1 r = 11 if e == 62: w+= 1 e = 11 if w == 62: q+= 1 w = 11 guess = '' a = characters [q-11] b = characters [w-11] c = characters [e -11] d = символдор [r-11] божомол+= бир божомол+= б болжоо+= с болжоо+= d

Жогорудагы код болжолдоо процессин жана символдор менен мүмкүн болгон 4 орундуу паролду кантип табууну көрсөтөт

эгерде == сырсөзү:

басып чыгаруу ("Номерди тап"+str (x)) басып чыгаруу ("Ойлон:"+божомол) тыныгуу башка: басып чыгаруу ("Ойлон:"+божомол)

Бул жердеги код сиз жазган "сырсөздү" табуу үчүн текшерилген сырсөздөрдүн суммасын көрсөтөт.

Бул жерде Brute Force Password Cracker шилтемеси:

"" "" Жарылуу үчүн жалпысынан 7171112 божомол керек.

Сунушталууда: