Zdroj obrázka: pixabay.com
Vitajte v mojom ďalšom blogu o programovaní v Pythone. Som tu znova, aby som vám dal pár návykových tipov na Pythona. Ale tentokrát to nie je založené na hackerstve, phreakingu alebo bezpečnosti. Je to o používaní python programovania pre naše každodenné úlohy. Takže, začnite.
Čo je programovanie? Neboj sa. Nie som tu, aby som vám dal typickú definíciu programovania. Časť, o ktorej tu dnes hovorím, je použitie programovania v našom každodennom živote a ako nám to pomáha automatizovať veci.
Programovanie v Pythone pre neinžinierov
Únavné úlohy
Každý v našom živote nie je softvérový inžinier. Napriek tomu má každý svoje veci, s ktorými sa musí vysporiadať. Programovanie je však jedna vec, ktorá môže uľahčiť veľa vecí. Všetci máme v našom dennom programe veľa vecí. A namiesto toho, aby sme to sledovali, môžeme nechať stroj postarať sa o tieto veci. Môžeme automatizovať naše úlohy po ruke pomocou jednoduchého programovania. Aj keď existuje veľa komerčných softvérov, nemôžeme na to však minúť peniaze. Nebudú tiež podľa našich vlastných potrieb. Okrem toho je vytvorenie vlastného programu úplne iná úroveň. Najlepší jazyk, ktorý si teraz môžem predstaviť, je programovanie v Pythone. Poviem vám ako.
Svet Python v / s
Ak už máte nejaké znalosti v programovaní, najmä C alebo C ++, možno viete, aké únavné je vytvoriť program a potom ho odladiť, aby sa z neho stal čistý program. Ale to nie je prípad Pythonu. A dokonca na rozdiel od Java, Assembly, JavaScript alebo iného jazyka, python nemá také ťažko zapamätateľné syntaxe.
Python je mimoriadne užívateľsky prívetivý a má definovaný spôsob, ako robiť veci. Na rozdiel od Ruby, čo je ďalšia súťaž pre programovanie pythonu, kde je rubín príliš užívateľsky prívetivý a má veľa spôsobov, ako urobiť jediný python, python to neponúka. Programovanie v Pythone má odsadenia a kód čitateľný používateľmi.
Jedným z najlepších príkladov, na ktoré môžem myslieť, je toto. Raz za čas alebo pre niektorých ľudí máme zvyklosti sťahovať videá z youtube každú chvíľu. Tieto videá teda určite môžeme stiahnuť stiahnutím náhodného softvéru z webu a jeho použitím. Ale niekedy to nie je také ľahké. Väčšina softvéru na webe je plná trójskych koní a vírusov.
Nemôžete na nich jednoducho závisieť. Boh vie, čo logická bomba skutočne prenikla do tohto softvéru. Takže namiesto toho, aby sme ľudstvu prešli všetky tieto problémy, máme programovanie pythonu, aby sme sa zachránili pred všetkými týmito problémami. Toto som niekde na webe našiel už dávno a odvtedy ho používam. Prostredníctvom tohto príkazu môžete jednoducho sťahovať videá z youtube.
Takto to vyzerá takto:
Krok 1: Nainštalujte Python, pip a uistite sa, že ste pri inštalácii vybrali premenné prostredia, aby ste mohli volať python z príkazového riadku odkiaľkoľvek.
Krok 2: Tento príkaz použite na stiahnutie modulu youtube
>>>pip install youtube-dl
Krok 3: Hotovo. To je všetko. Žiadny krok 3. Teraz, kedykoľvek potrebujete stiahnuť akékoľvek video, jednoducho použite tento príkaz na príkazovom riadku a stiahnite svoje video:
>>>youtube-dl (OPTIONS) URL (URL…)
Teraz môžete mať presnú predstavu o tom, o čom som hovoril. Nie je to extrémne ľahké, ako sťahovať akýkoľvek trójsky softvér z internetu?
Nezabudnite, že youtube-dl je malý program príkazového riadku, ktorý sťahuje videá z lokality YouTube.com a z niekoľkých ďalších stránok. Vyžaduje sa interpret Python, verzia 2.6, 2.7 alebo 3.2+, a nie je to platforma. Mal by fungovať vo vašom Unixovom boxe, vo Windows alebo Mac OS X. Môžete tiež vyskúšať >>> youtube-dl –help a skontrolovať potrebné kroky, napríklad, ak si ho chcete stiahnuť z https alebo http alebo z iného portu alebo niečo také.
Odporúčané kurzy
- Programovacie kurzy XML
- CCNA certifikačný kurz
- Certifikačný kurz v systéme UNIX a Linux
- Programovacie školenie HTML 5
Práca: Želám všetko najlepšie k narodeninám, režim GEEK je zapnutý
Teraz, ak sa nebudete z tohto blogu nudiť a stále to čítate, budem o trochu vyššiu úroveň. Predpokladajme, že ste človek, ktorý je geek vo vašej skupine priateľov, a stále vám hovoria o tom, ako nudný ste a do počítača investujete 16 hodín zo svojich 24 hodín denne. Potom je to jeden zo spôsobov, ako ukázať, aké úžasné môžete byť. Teraz predpokladám, že už viete kúsky a bajty programovania pythonu, a budem pokračovať ďalej.
Povedzme, že tento týždeň máte jedno z narodenín vášho priateľa a vy musíte urobiť niečo podivné, ktoré zaujme všetkých vašich priateľov. Najprv si potom môžete urobiť zoznam toho, čo sa deje, keď idete na oslavu narodenín. K dispozícii budú koláče, sviečky a narodeniny, ktoré prajú všetko najlepšie k narodeninám. Umožňuje teda vytvoriť virtuálny tortu, ktorého odtieň má ekvalizérový efekt zodpovedajúci piesni „všetko najlepšie k narodeninám“, ktorá sa prehráva na pozadí. Tu bude mať koláč sviečky s plameňmi, ktoré sa náhodne vlajú.
Taktiež budeme mať skvelú ukážku správy k narodeninám. Prvá vec, ktorú musíme urobiť, je importovať niektoré moduly, aby fungovali správne. Takže tu to ide (a nezabudnite, že toto je všetko jeden kus kódu, ktorý je potrebné umiestniť do jedného súboru 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
Teraz umožňuje napísať kód na spustenie súboru wave / mp3, keď sa kód spustí.
>>>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
Poznámka: Všetko napísané červenou farbou alebo začínajúce znakom # je komentár. Hodnoty ako korekčná hodnota, dĺžka skladby sa bude líšiť od osoby k osobe v závislosti od vybranej skladby a ďalších vecí. Možno bude potrebné tieto veci vyladiť podľa vášho výberu piesne.
Teraz prichádza časť Cake. Tu je kúsok kódu, ktorý som napísal pre tortu. Znak displeja a veľkosť koláča môžete zmeniť v závislosti od toho, ako má koláč vyzerať.
>>>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
Teraz musíme zapáliť tortu, aby to vyzeralo, že sviečka horí.
flame_flutter_rate = 50
FLAMES = ( " . ", ". ", " ." ) current_flame = ""os.system("tput civis") #hide cursor
Teraz, ak ste na počítači Mac, možno budete musieť otvoriť iTunes alebo iný prehrávač, aby ste mohli spustiť skladbu. Takže, ak ste v systéme Mac, odkomentujte nasledujúci príkazový kód os.systému (jednoducho odstráňte značku hash #)
#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
"" "
POZNÁMKA: korekcia sa musí vynásobiť časom spánku
Je to z dôvodu niekoľkých faktorov, ako je čas potrebný na prebudenie zo spánku, typ použitého terminálu atď
Zmeňte hodnotu opravy tak, aby vyhovovala vašim potrebám
"" "time.sleep(((float)(display_rate * t_total) / data_length)*correction)
# clear screen
if _f != data_length/display_rate-1:
os.system("clear")
raw_input()
Poznámka: Tento kód bol napísaný v jazyku python 2.7.9. Možno budete musieť urobiť nejaké zmeny, ak používate python v3.4 / starší alebo novší.
Toto je niekoľko príkladov, ktoré urobím, keď sa nudím. Stačí zmeniť meno a urobiť niekoľko zmien pre každú ďalšiu osobu. To nielenže robí programovanie pythonu zaujímavým, ale tiež môže robiť vaše každodenné úlohy.
Môžete si dokonca vytvoriť vlastný zoznam úloh alebo poznámkový blok alebo niečo podobné. Teraz si môžete myslieť, že existuje 'n' počet programov, ktoré robia to isté, tak prečo napísať svoj vlastný. Dôvodom je prispôsobenie. Ak si kúpite alebo stiahnete softvér, ktorý neviete, čo je zdrojový kód, alebo ak potrebujete niektoré z vašich vlastných úprav, možno ho budete musieť kúpiť. Ale programovanie pythonu je také ľahké pochopiť a napísať, že nemusíte nič kupovať.
Okrem toho, aby som vám povedal pravdu, prvýkrát som začal automatizovať svoje každodenné úlohy pomocou pythonového programovania, ale neskôr som sa začal zaujímať, že som sa začal učiť všetko, čo s tým súvisí, a teraz je môj profil práce rovnaký; vytvárať programy v Pythone.
To by bol koniec tohto blogu, ale skôr, ako to skončím, dám vám niekoľko bodov, aby ste mohli ísť skontrolovať niektoré super automatizačné veci, ktoré ľudia urobili pomocou pythonu, a som si istý, že budete prekvapení, keď uvidíte, čo ľudia urobili pomocou jednoduchého programovania. K dispozícii je tiež kniha s názvom „Automatizácia nudných výrobkov s Pythonom“. Nezabudnite to skontrolovať.
Tu je môj zoznam:
- Premenovanie viacerých súborov pomocou jednoduchého kódu (hovorím o súboroch viac ako 100 200 alebo dokonca 1 000)
- Automatizácia skriptov v práci (ak ste systémový inžinier)
- Vytvorenie čítačky RSS (Príčina použitia zabudovanej čítačky je príliš bežná)
- Vytvorenie telefónneho zoznamu chráneného heslom (veľmi jednoduché)
- Vytvorenie Poznámkového bloku chráneného heslom na uloženie hesiel a osobných dokumentov (vrátane obrázkov a dokumentov)
- Sťahovanie mp3 súborov pomocou inteligentného vyhľadávania (sťahovanie mp3 súborov s podobnými menami priamo a náhodne z webu)
Odporúčané články
Tu je niekoľko článkov, ktoré vám pomôžu získať viac podrobností o praktickom programovaní Pythonu, takže stačí prejsť na odkaz.
- Kľúčové rozdiely jazyka Python a JavaScript
- TOP Najúžasnejšie otázky a odpovede týkajúce sa rozhovoru s Pythonom
- Kariéra v Pythone
- 10 dôležitých užitočných tipov na programovanie v Pythone
- Python vs Ruby Performance - zistite rozdiely