Praktické programování Pythonu pro neinženýry - eduCBA

Obsah:

Anonim

Zdroj obrázku: pixabay.com

Vítejte v mém dalším blogu o programování v Pythonu. Jsem tu znovu, abych vám dal pár návykových tipů na Pythona. Ale tentokrát to není založeno na hackerství, phreakingu nebo narušení bezpečnosti. Je to o používání python programování pro naše každodenní úkoly. Takže začněme.

Co je programování? Nebojte se. Nejsem zde, abych vám dal typickou definici Programování. Součástí, o které zde dnes mluvím, je používání programování v našem každodenním životě a to, jak nám to pomáhá automatizovat věci.

Programování v Pythonu pro neinženýry

Únavné úkoly

Každý v našem životě není softwarový inženýr. Ale přesto má každý své věci, se kterými se musí vypořádat. Ale programování je jedna věc, která může hodně věcí usnadnit. Všichni máme v našem denním plánu spoustu úkolů. A místo toho, abychom to sledovali, můžeme nechat stroj, aby se o tyto věci postaral. Můžeme automatizovat naše úkoly po ruce pomocí jednoduchého programování. I když existuje spousta komerčních softwarů, ale nemůžeme utrácet peníze za každou věc. Nebudou také podle našich vlastních potřeb. Kromě toho je tvorba našeho vlastního programu úplně jiná úroveň. Nejlepším jazykem, na který si teď myslím, je programování v Pythonu. Řeknu vám jak.

Python v / s Svět

Pokud máte nějaké znalosti v programování dříve, zejména C nebo C ++, pak možná víte, jak únavné je vytvořit program a poté jej ladit, aby se z něj stal čistý program. Ale to není případ Pythonu. A dokonce na rozdíl od Java, Assembly, JavaScript nebo jakéhokoli jiného jazyka, python nemá tyto těžko zapamatovatelné syntaxe.

Python je velmi uživatelsky přívětivý a má definovaný způsob, jak dělat věci. Na rozdíl od ruby, což je další soutěž o programování pythonu, kde je rubín příliš uživatelsky přívětivý a má mnoho způsobů, jak udělat jediný python, python to nenabízí. Programování v Pythonu má odsazení a uživatelsky čitelný kód.

Jedním z nejlepších příkladů, na které mohu myslet, je toto. Jednou za čas, nebo pro některé lidi, máme zvyk stahovat videa z youtube každou chvíli. Tato videa tedy můžeme určitě stáhnout stažením nějakého náhodného softwaru z webu a jeho použitím. Ale někdy to není tak snadné. Většina softwaru na webu je plná trojských koní a virů.

Nemůžete se na ně jednoduše spolehnout. Bůh ví, jaké logické bomby skutečně pronikají do tohoto softwaru. Takže místo toho, abychom lidstvu procházeli všemi těmito problémy, máme python programování, abychom se zachránili před všemi těmito problémy. Našel jsem to někde na webu už dávno a od té doby je používám. Díky tomu můžete jednoduše stahovat videa z youtube pomocí jednoduchého příkazu.

Takto to vypadá:

Krok 1: Nainstalujte Python, pip a ujistěte se, že jste při instalaci vybrali proměnné prostředí, takže můžete volat python z příkazového řádku odkudkoli.

Krok 2: Pomocí tohoto příkazu stáhněte modul youtube

>>>pip install youtube-dl

Krok 3: Hotovo. A je to. Žádný krok 3. Nyní, kdykoli potřebujete stáhnout jakékoli video, jednoduše použijte tento příkaz na příkazovém řádku a stáhněte si video:

>>>youtube-dl (OPTIONS) URL (URL…)
Nyní můžete mít přesnou představu o tom, o čem jsem mluvil. Není to extrémně snadné, než stahovat nějaký trojský software z internetu?

Nezapomeňte, že youtube-dl je malý program příkazového řádku, který stahuje videa z YouTube.com a několika dalších webů. Vyžaduje interpret jazyka Python verze 2.6, 2.7 nebo 3.2+ a není specifický pro platformu. Měl by fungovat na Unixu, na Windows nebo na Mac OS X. Můžete také zkusit >>> youtube-dl –help a zkontrolovat potřebné kroky, například pokud si jej chcete stáhnout z https nebo http nebo z jiného portu nebo něco takového.

Doporučené kurzy

  • Programovací kurzy XML
  • CCNA certifikační kurz
  • Certifikační kurz v systému UNIX a Linux
  • Programovací školení HTML 5

Práce: Přeji všechno nejlepší k narozeninám, GEEK Mode ON

Nyní, pokud se nebudete z tohoto blogu nudit a stále to čtete, budu na o něco vyšší úroveň. Předpokládejme, že jste osoba, která je geek ve vaší skupině přátel, a pořád vám říkají, jak nudný jste, a vy investujete 16 hodin ze svých 24 hodin denně do počítače. Pak je to jeden ze způsobů, jak ukázat, jak báječný můžete být. Teď předpokládám, že už znáte bity a bajty programování v pythonu, a budu pokračovat vpřed.

Řekněme, že tento týden máte jedno z narozenin vašeho přítele a vy musíte udělat něco podivínským způsobem, který zaujme všechny vaše přátele. Nejprve si pak můžete udělat seznam toho, co se děje, když jdete na narozeninovou oslavu. Všechno nejlepší k narozeninám budou písně Cakes, Svíčky a Narozeniny. Umožňuje tedy vytvořit virtuální dort, jehož stín má ekvalizérový efekt odpovídající písni „všechno nejlepší k narozeninám“, která se hraje na pozadí. Zde bude mít dort svíčky s plameny, které se náhodně vlajou.

Budeme mít také fantastické zobrazení šťastné narozeniny. První věc, kterou musíme udělat, je importovat některé moduly, aby fungovaly správně. Tady to jde (a pamatujte si, že je to všechno jeden kus kódu, který musí být umístěn v jednom souboru 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


Nyní umožňuje napsat kód pro soubor wave / mp3, který má být spuštěn, když je kód spuštěn.

>>>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šechno napsané červeně nebo začínající na # tag, jsou komentáře. Hodnoty, jako je korekční hodnota, délka skladby, se budou lišit od osoby k člověku v závislosti na vybrané skladbě a dalších věcech. Možná budete muset tyto věci vyladit podle svého výběru písně.

Nyní přichází část Cake. Tady je kousek kódu, který jsem pro dort napsal. Znak zobrazení a velikost dortu můžete změnit v závislosti na tom, jak má dort vypadat.

>>>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


Nyní musíme zapálit plamen tak, aby to vypadalo, že hoří svíčka.

flame_flutter_rate = 50
FLAMES = ( " . ", ". ", " ." ) current_flame = ""


os.system("tput civis") #hide cursor

Nyní, pokud jste na mac, pak budete možná muset otevřít iTunes nebo jiného hráče, aby se spustila píseň. Pokud tedy používáte počítač Mac, odkomentujte níže uvedený příkazový kód os.systému (Stačí jednoduše odebrat 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 bucket

for 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: korekce musí být vynásobena časem spánku
Je to z důvodu několika faktorů, jako je čas potřebný k probuzení ze spánku, typ použitého terminálu … atd
ZMĚNTE HODNOTU Opravy, aby vyhovovala vašim potřebá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 byl napsán v Pythonu 2.7.9. Možná používáte některé změny, pokud používáte python v3.4 / starší nebo novější.

Tohle je několik příkladů, které dělám, když se nudím. Stačí změnit jméno, provést několik změn pro každou jinou osobu. Takže to nejen dělá zajímavé programování pythonu, ale také to může dělat vaše každodenní úkoly.

Můžete si dokonce vytvořit svůj vlastní seznam úkolů nebo poznámkový blok nebo něco takového. Nyní si můžete myslet, že existuje 'n' počet programů, které dělají totéž, tak proč napsat svůj vlastní. Důvodem je přizpůsobení. Když kupujete nebo stahujete software, který nevíte, co je zdrojový kód, nebo pokud potřebujete některé z vašich vlastních úprav, možná budete muset software zakoupit. Ale programování pythonu je tak snadné pochopit a napsat, že nemusíte nic kupovat.

Kromě toho, abych vám řekl pravdu, poprvé jsem začal automatizovat své každodenní úkoly pomocí pythonového programování, ale později jsem se začal zajímat o to, že jsem se začal učit všechno, co s tím souvisí, a nyní je můj pracovní profil stejný; vytvářet programy v Pythonu.

To by byl konec tohoto blogu, ale než to skončím, dám vám několik bodů, abyste mohli jít a zkontrolovat některé super automatizační věci, které lidé udělali s pythonem, a jsem si jist, že budete překvapeni, když uvidíte co lidé dělali s jednoduchým programováním. K dispozici je také kniha s názvem „Automatizace nudných produktů s Pythonem“. Nezapomeňte to zkontrolovat.

Tady je můj seznam:

  1. Přejmenování více souborů pomocí jednoduchého kódu (mluvím o souborech více než 100 200 nebo dokonce 1 000)
  1. Automatizace skriptů v práci (pokud jste systémový inženýr)
  1. Vytvoření čtečky RSS (Příčina použití vestavěné je příliš běžná)
  1. Vytvoření telefonního seznamu chráněného heslem (velmi jednoduché)
  1. Vytvoření Poznámkového bloku chráněného heslem k uložení hesel a osobních dokumentů (včetně obrázků a dokumentů)
  1. Stahování mp3 souborů pomocí inteligentního vyhledávání (Stahování mp3 souborů s podobnými jmény přímo a náhodně z webu)

Doporučené články

Zde je několik článků, které vám pomohou získat více podrobností o praktickém programování Pythonu, takže stačí projít odkaz.

  1. Python vs. klíčové rozdíly v JavaScriptu
  2. TOP Nejúžasnější otázky a odpovědi v Pythonu
  3. Kariéra v Pythonu
  4. 10 Důležité užitečné tipy pro programování v Pythonu
  5. Python vs Ruby Performance-Zjistěte rozdíly