Питхон је свестрани програмски језик који можете користити за писање различитих типова ГУИ и ЦЛИ апликација. Ако сте нови у Питхон-у, нема бољег начина да ојачате своје учење од рада на мини пројектима.

Одличан пример Питхон пројекта за писање је пинг чистач, мали услужни програм који проверава мрежне хостове. Ова скрипта ће покрити основне концепте програмирања, укључујући изјаве за штампање, петље и функције.

Шта је пинг чистач?

Пинг чистач је програм који прихвата мрежну адресу као улаз, пингује хостове у мрежи и исписује листу мртвих и живих хостова. То је једноставан начин да процените број онлајн хостова у вашој мрежи и сазнате њихове ИПв4 адресе.

Као почетник, креирање пинг чистача је одличан начин да надоградите своје основе Питхон-а. Овај практични мини-пројекат ће такође освежити ваше разумевање основе умрежавања.

Предуслови за ваш Пинг Свеепер

Пре него што започнете процес развоја, требало би да се уверите да имате најновију верзију Питхон-а на свом систему.

Проверите да ли можете да покренете Питхон тако што ћете откуцати ову команду у командној линији (за Виндовс кориснике) или терминалу (за УНИКС/Линук системе) и притиснути

Ентер:

питхон --версион

На неким системима, можда ћете морати да покренете:

питхон3 --версион

Ова команда би требало да врати верзију Питхон-а инсталирану на вашем систему. Ако врати грешку сличну „питхон нот фоунд“, требало би инсталирајте Питхон3 а затим наставите са следећим корацима.

Кодирање Пинг Свеепер-а

Постоји више приступа за изградњу ове скрипте. Неки би захтевали да инсталирате и увезете неколико модула. Овде ћете користити минималистички приступ који нема спољне зависности осим кључне ос модул.

Пре него што почнете да кодирате, разбијте захтеве да бисте боље разумели које функције ћете морати да примените. Постоје три дела ове скрипте:

  1. Прихватите улазну ИП адресу.
  2. Извуците ИД мреже из ИП адресе.
  3. Итерирајте све хостове у мрежи и одштампајте ако је хост мртав или жив.

Сада када имате јасну слику тока посла, почнимо са програмирањем.

Прихватање и обрада уноса

Први део скрипте се бави прихватањем уноса од корисника и смањењем те ИПв4 адресе на прва три октета. Ово нам даје ИД мреже:

увоз ос

ИП = инпут("[+] Унесите ИП адресу хоста:\т")
принт("[+] Покретање Пинг Свеепер-а на " + ИП)
тачка = ИП.рфинд(".")
ИП = ИП[0:дот + 1]

Тхе улазни() функција прихвата кориснички унос. Можете користити низ рфинд() метод за издвајање индекса последњег појављивања децималног зареза и његово складиштење у тачка променљива. Наставите тако што ћете задржати све од уноса до крајње десне појаве децималног зареза.

Скенирање хостова и штампање статуса хоста

Извели сте мрежну адресу из улазне ИП адресе. Сада можете итерирати кроз све могуће вредности за коначни ИПв4 октет: 1–254. Унутар фор петље, сачувајте нову ИП адресу у домаћин променљива. Овај ИП је основни ИП иза којег следи вредност променљиве итератора. Затим користите ос.систем() метод за покретање пинг команда против домаћин променљива.

за и ин домет(1, 255):
хост = ИП + стр (и)
одговор = ос.систем("пинг -ц 11 " + хост + " >/дев/нулл")

ако одговор == 0:
штампа (хост + " је горе")
друго:
штампа (хост + " је доле")

Тестирајте одговор вредност у односу на 0 да бисте одредили статус хоста и одлучили да ли је онлајн или ван мреже. Ако пинг наиђе на хост који не реагује, он враћа вредност различиту од нуле. У супротном, враћа нулу да назначи хоста до којег може доћи.

Можете додати ц застава и в заставицу, са вредностима 1, на оригиналну пинг команду. Због тога шаље само један пакет и чека једну секунду да прими одговор. Ваша верзија пинга може или не мора подржавати ове опције; консултујте пинг ман страницу да проверите.

Такође би требало да преусмерите излаз на /dev/null да сакријете детаље пинг излаза. Имајте на уму да је синтакса пинг и /дев/нулл компатибилна само са Уник или Линук системима. Ову скрипту можете покренути на Виндовс-у тако што ћете заменити ц застава са н и >/дев/нулл са >нул.

Покретање скрипте Пинг Свеепер

Ову скрипту можете покренути у терминалу или преко командне линије. Покрените терминал, пређите на локацију скрипте и извршите је помоћу питхон3:

цд /directory/sweeper/
питхон3 свеепер.пи

Унесите ИПв4 адресу или подмрежу у терминал, а пинг чистач би требало да почне да ради и врати очекивани излаз.

Занимљиве пројектне идеје за Питхон

Практично учење је вероватно најбољи и најбржи начин да научите програмски језик. Што више пројеката радите, више ћете схватити концепте, изградити основне вештине и разумети како да решите проблеме.

Ако вам је понестало пројектних идеја на којима бисте могли да радите, погледајте ову курирану листу најбољих пројектних идеја за Питхон.