Kujutise allikas: pixabay.com
Tere tulemast minu järgmisesse Pythoni programmeerimise blogisse. Olen jälle siin, et anda teile mõnda sõltuvust pakkuvat näpunäidet Pythoni kohta. Kuid seekord ei põhine see häkkimisel, äratõmbamisel ega turvalisuse rikkumisel. Selle eesmärk on python-programmeerimise kasutamine meie igapäevaste ülesannete jaoks. Alustame siis.
Mis on programmeerimine? Ärge muretsege. Ma ei ole siin, et anda teile programmeerimise tüüpiline määratlus. See osa, millest ma siin täna räägin, on programmeerimise kasutamine meie igapäevases elus ja kuidas see aitab meil asju automatiseerida.
Pythoni programmeerimine mitteinseneridele
Väsitavad ülesanded
Kõik meie elus pole tarkvarainsenerid. Kuid ikkagi on kõigil oma asjad, millega nad peavad tegelema. Kuid programmeerimine on üks asi, mis võib paljusid asju lihtsamaks teha. Meil kõigil on oma päevakavas palju tegemata asju. Ja selle asemel, et sellel silma peal hoida, võime lasta masinal nende asjade eest hoolitseda. Saame lihtsustada programmeerimist oma käepäraseid ülesandeid automatiseerida. Seal on küll palju kaubanduslikku tarkvara, kuid me ei saa iga asja peale raha kulutada. Samuti ei vasta need meie enda kohandatud vajadustele. Pealegi on meie enda programmi loomine hoopis teisel tasemel. Parim keel, mida ma praegu mõelda saan, on Pythoni programmeerimine. Las ma ütlen teile, kuidas.
Python v / s Maailm
Kui teil on varasemaid programmeerimist puudutavaid teadmisi, eriti C või C ++, siis võib-olla teate, kui tüütu on programmi luua ja seejärel siluda, et see oleks puhas programm. Kuid Pythoni puhul see nii pole. Ja isegi erinevalt Java, Assembly, JavaScripti või mis tahes muust keelest pole pythonil neid raskesti meeldejäävaid süntakse.
Python on äärmiselt kasutajasõbralik ja sellel on määratletud viis asjade tegemiseks. Erinevalt rubiinist, mis on järjekordne pütoni programmeerimise võistlus, kus ruby on liiga kasutajasõbralik ja millel on palju võimalusi ühe pütoni tegemiseks, python seda ei paku. Pythoni programmeerimisel on taanded ja kasutajal loetav kood.
Üks parimaid näiteid, mida ma võin mõelda, on see. Iga natukese aja tagant või mõne inimese jaoks on meil kombeks aeg-ajalt YouTube'i videoid alla laadida. Seega saame need videod kindlasti alla laadida, laadides veebist alla juhusliku tarkvara ja kasutades seda. Kuid mõnikord pole see nii lihtne. Enamik veebitarkvara on täidetud troojalaste ja viirustega.
Nii et te ei saa neist lihtsalt sõltuda. Jumal teab, milline nende loogikapomm tegelikult sellesse tarkvara on tunginud. Selle asemel, et inimkond kogu selle vaeva läbi viia, on meil python-programmid, et päästa end kõigist nendest vaevadest. Leidsin selle kuskilt veebist juba tükk aega tagasi ja olen seda sellest ajast alates kasutanud. Selle kaudu saate lihtsa käsklusega alla laadida youtube'i videoid.
Niisiis, kuidas see läheb:
1. samm: installige Python, pip ja veenduge, et valite installimisel keskkonnamuutujad, et saaksite pythonit käsurealt helistada ükskõik kust.
2. samm: kasutage seda käsku YouTube'i mooduli allalaadimiseks
>>>pip install youtube-dl
3. samm: valmis. See selleks. 3. samm. Nüüd, kui teil on vaja mõni video alla laadida, kasutage käsuribal lihtsalt seda käsku ja laadige oma video alla:
>>>youtube-dl (OPTIONS) URL (URL…)
Nüüd võib teil olla täpne ettekujutus sellest, millest ma rääkisin. Kas pole see Trojanedi tarkvara Internetist allalaadimise asemel eriti lihtne?
Pange ainult tähele, et youtube-dl on väike käsuridade programm videote allalaadimiseks saidilt YouTube.com ja veel mitmetelt saitidelt. See nõuab Pythoni tõlki, versiooni 2.6, 2.7 või 3.2+ ning see pole platvormispetsiifiline. See peaks töötama teie Unixi kastis, Windowsis või Mac OS X-is. Võite proovida ka >>> youtube-dl –abi ja kontrollida vajalikke samme, näiteks kui soovite selle alla laadida https-st või http-st, teisest pordist või midagi sellist.
Soovitatavad kursused
- XML-i programmeerimiskursused
- CCNA eksami sertifitseerimise kursus
- Sertifikaadikursus UNIXis ja Linuxis
- HTML 5 programmeerimiskoolitus
Töö: palju õnne sünnipäevaks, GEEK-režiim sisse lülitatud
Kui teil pole sellest ajaveebist igav ja te loete seda endiselt, siis natuke kõrgemal tasemel. Eeldame, et olete inimene, kes on teie sõpruskonnas heatahtlik, ja nad räägivad teile alati, kui igav teil on, ning investeerite oma arvutist päevas 24 tunnist 16 tundi. Siis on see üks viis näidata, kui vapustav sa olla võid. Nüüd eeldan, et teate juba pythoni programmeerimise bitti ja baiti, ja asun sammu edasi.
Ütleme nii, et teil on sel nädalal ühe sõbra sünnipäev ja peate tegema midagi osavat, mis avaldaks kõigile teie sõpradele muljet. Seejärel lase kõigepealt sünnipäevale minnes koostada nimekiri, mis seal on. Õnne sünnipäeva soovijatele ootavad koogid, küünlad ja sünnipäevalaulud. Nii saab luua virtuaalse koogi, kelle varjundil on ekvalaiseriefekt, mis vastab taustal mängitavale laule “palju õnne sünnipäevaks”. Siin on koogil küünlad, mille leegid lendavad juhuslikult.
Samuti on meil välja pandud väljapanek õnneliku sünnipäeva kohta. Esimene asi, mida peame tegema, on mõne mooduli importimine, et see õigesti töötaks. Niisiis, siin see läheb (ja lihtsalt pidage meeles, et see on kõik üks kooditükk, mis tuleb paigutada ühte faili xyz.py)
>>>import scipy.io.wavfile as wavfile
>>>import numpy as np
>>>import pylab as pl
>>>import time
>>>import os
>>>import sys
>>>import subprocess
>>>from scipy import mean
>>>from random import randint
Nüüd laseme kirjutada koodi wave / mp3 faili käivitamiseks, kui kood käivitatakse.
>>>FILE = "Song.mp3"
>>>rate, data = wavfile.read(FILE)
>>>t_total = len(data(:, 0))/rate
>>>display_rate = 1500 #number of frames processed in one iteration
>>>sample_size = 120
>>>max_display = 90
>>>data_length = len(data) #total number of frames
>>>_min = min((abs(x) for x in data(:, 0))) #max amplitude in the wav
>>>_max = max((abs(x) for x in data(:, 0))) #min amplitude in the wav
>>>correction = 0.645
Märkus. Kõik, mis on kirjutatud punasega või algab sildiga #, on kommentaarid. Väärtused, nagu paranduse väärtus, laulu pikkus, sõltuvad valitud laulust ja muust. Võimalik, et peate neid asju oma valitud laulu jaoks näpistama.
Nüüd tuleb koogi osa. Siin on kooditükk, mille ma tordile kirjutasin. Saate muuta kooki ekraanivärvi ja suurust sõltuvalt sellest, kuidas kook välja peaks nägema.
>>>cols = int(subprocess.Popen("tput cols", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE).stdout.readlines()(0)) #columns in terminal
>>>display_char = "8"
>>>cake_size = 50
Nüüd peame kooki sättima leekidele nii, et näeks, nagu küünal põleb.
flame_flutter_rate = 50
FLAMES = ( " . ", ". ", " ." ) current_flame = ""os.system("tput civis") #hide cursor
Nüüd, kui olete Mac-is, peate võib-olla laulu käitamiseks avama iTunes'i või mõne muu mängija. Niisiis, kui olete Mac-is, siis eemaldage osSsüsteemi allpool olev käsukood (eemaldage lihtsalt räsi # silt).
#os.system("open "+FILE)
for _f in range(data_length/display_rate):
# fluttering effect to candle flames
if _f%flame_flutter_rate == 0:
current_flame = (" "*(cols/2 - cake_size/2))+((" "+FLAMES(randint(0, 2))+" ")*(cake_size/5))
print current_flame
# candles
print (" "*(cols/2 - cake_size/2))+(" | "*(cake_size/5))
# cake top layer
print (" "*(cols/2 - cake_size/2))+("-"*cake_size)
bucket = () mug = ()
# mug contains the current frame samples (absolute values) of given sample_size
# average of mugs are put into bucketfor value in data(:, 0)(_f*display_rate+1:(_f+1)*display_rate):
mug.append(abs(value))if len(mug) == sample_size:
bucket.append(mean(mug))
mug = ()bucket = ( (float)((x - _min) * max_display)/(_max - _min) for x in bucket )
# print the equalizer from the bucket
for value in bucket:
print (" "*(cols/2 - cake_size/2))+"| "+("8"*(value%(cake_size-2)))+(" "*(cake_size-value-2))+"|"
# bottom crust of the cake
print (" "*(cols/2 - cake_size/2))+("-"*cake_size)
# print happy birthday message
os.system("figlet -c -f small Happy Birthday Chetan!")
# sleep to match with the audio
“”
MÄRKUS. Parandus tuleb korrutada uneajaga
Selle põhjuseks on mitmed tegurid, näiteks unest ärkamiseks kuluv aeg, kasutatud terminali tüüp .. jne
Muutke paranduse väärtust, et see sobiks teie vajadustega
“”time.sleep(((float)(display_rate * t_total) / data_length)*correction)
# clear screen
if _f != data_length/display_rate-1:
os.system("clear")
raw_input()
Märkus. See kood kirjutati pütonis 2.7.9. Võimalik, et peate kasutama Python v3.4 / varasemat või viimast, peate mõned muudatused tegema.
Nüüd on need mõned näited, mida ma teen, kui mul on igav. Muutke lihtsalt nime, tehke iga teise inimese jaoks paar muudatust. Niisiis, see ei muuda python-programmeerimist huvitavaks, vaid võimaldab ka igapäevaseid ülesandeid täita.
Saate isegi luua oma ülesandeloendi või märkmiku või midagi sellist. Nüüd võite mõelda, et seal on n-i arv programme, mis teevad sama, siis miks kirjutada oma. Selle põhjuseks on kohandamine. Tarkvara ostes või alla laadides ei tea te, mis on lähtekood, või kui vajate mõnda omaenda kohandamist, peate võib-olla isegi tarkvara ostma. Kuid pythoni programmeerimist on nii äärmiselt lihtne mõista ja kirjutada, et te ei pea midagi ostma.
Pealegi, tõtt rääkides, hakkasin kõigepealt automatiseerima oma igapäevaseid ülesandeid python-programmeerimise abil, kuid hiljem hakkasin nii palju huvi tundma, et hakkasin õppima kõike sellega seotud ja nüüd on mu tööprofiil sama; programmide loomiseks Pythonis.
See oleks selle ajaveebi lõpp, kuid enne kui selle lõpetan, annan teile mõned punktid, et saaksite minna vaatama lahedaid automatiseerimise asju, mida inimesed on pythoniga teinud, ja olen kindel, et näete üllatusena mida inimesed on lihtsa programmeerimisega teinud. Samuti on olemas raamat nimega “Igavate asjade automatiseerimine Pythoniga”. Kontrollige kindlasti seda.
Niisiis, siin on minu nimekiri:
- Mitme faili ümbernimetamine lihtsa koodiga (ma räägin failidest üle 100 200 või isegi 1000)
- Skriptide automatiseerimine tööl (kui olete süsteemiinsener)
- RSS-lugeja loomine (põhjus, et sisseehitatud on liiga tavaline)
- Parooliga kaitstud telefoniraamatu loomine (äärmiselt lihtne)
- Parooliga kaitstud märkmiku loomine paroolide ja isiklike dokumentide (sealhulgas piltide ja dokumentide) salvestamiseks
- Mp3-failide allalaadimine nutika otsingu abil (sarnaste nimedega mp3-failide allalaadimine otse ja juhuslikult veebist)
Soovitatavad artiklid
Siin on mõned artiklid, mis aitavad teil praktilise Pythoni programmeerimise kohta üksikasjalikumat teavet saada, nii et lihtsalt minge lingi kaudu.
- Python vs JavaScripti võtme erinevused
- TOPi kõige hämmastavamad Pythoni intervjuu küsimused ja vastused
- Karjäär Pythonis
- 10 olulist kasulikku näpunäidet Pythoni programmeerimise kohta
- Python vs Ruby Performance - uuri erinevusi