Praktisk Python-programmering for ikke-ingeniører - eduCBA

Indholdsfortegnelse:

Anonim

Billedkilde: pixabay.com

Velkommen til min næste blog om Python-programmering. Jeg er her igen for at give dig nogle vanedannende tip til Python. Men denne gang er det ikke baseret på Hacking, Phreaking eller Security Breaking. Det handler om at bruge python-programmering til vores daglige opgaver. Så lad os starte.

Hvad er programmering? Bare rolig. Jeg er ikke her for at give dig den typiske definition af programmering. Den del, som jeg skal tale her i dag, er brugen af ​​programmering i vores daglige liv, og hvordan det hjælper os med at automatisere ting.

Python-programmering til ikke-ingeniører

Kedelige opgaver

Alle i vores liv er ikke en softwareingeniør. Men stadig har alle deres ting, som de har brug for. Men programmering er en ting, der kan gøre en masse ting lettere. Vi har alle en masse at gøre ting i vores daglige skema. Og i stedet for at vi holder styr på det, kan vi lade maskinen tage sig af disse ting. Vi kan automatisere vores opgaver til rådighed ved hjælp af simpel programmering. Selvom der er en masse kommercielle software der, men vi kan ikke bruge penge på alle ting. De vil heller ikke være i henhold til vores egne tilpassede behov. Desuden er det at skabe vores eget program et helt andet niveau. Det bedste sprog, jeg kan tænke på nu, er Python-programmering. Lad mig fortælle dig hvordan.

Python v / s Verden

Hvis du har en vis viden inden for programmering tidligere, især C eller C ++, kan du måske vide, hvor kedelig det er at oprette et program og derefter fejlsøge det for at gøre det til et rent program. Men det er ikke tilfældet med Python. Og selv i modsætning til Java, Assembly, JavaScript eller noget andet sprog, har python ikke disse svære at huske syntakser.

Python er ekstremt brugervenlig og har en defineret måde at gøre tingene på. I modsætning til ruby, som er en anden konkurrence for python-programmering, hvor ruby ​​er for brugervenlig og har en masse måder at udføre en enkelt python, tilbyder python det ikke. Python-programmering har indrykk og en brugerlæsbar kode.

Et af de bedste eksempler, jeg kan tænke på, er dette. Hver gang imellem, eller for nogle mennesker, har vi en vane at downloade videoer fra YouTube hver nu og da. Så vi kan helt sikkert downloade disse videoer ved at downloade noget tilfældigt software fra internettet og bruge det. Men nogle gange er det ikke så let. De fleste software på nettet er fyldt med trojanere og vira.

Så du kan ikke blot være afhængig af dem. Gud ved, hvad de slags logiske bomber faktisk trænger ind i denne software. Så i stedet for at tage menneskeheden igennem al denne problemer, har vi python-programmering for at redde os selv fra alle disse besvær. Jeg fandt dette et sted på nettet for længe siden, og har brugt det siden da. Gennem dette kan du nemt downloade YouTube-videoer med en simpel kommando.

Så her er det hvordan det går:

Trin 1: Installer Python, pip, og sørg for at vælge miljøvariabler, når du installerer, så du kan kalde python fra kommandolinjen hvor som helst.

Trin 2: Brug denne kommando til at downloade YouTube-modul

>>>pip install youtube-dl

Trin 3: Udført. Det er det. Intet trin 3. Hver gang du har brug for at downloade en video, skal du blot bruge denne kommando på kommandolinjen og downloade din video:

>>>youtube-dl (OPTIONS) URL (URL…)
Nu kan du have en nøjagtig idé om, hvad jeg talte om. Er det ikke dette ekstremt let i stedet for at downloade nogen Trojaned-software fra internettet?

Bemærk bare at youtube-dl er et lille kommandolinjeprogram til download af videoer fra YouTube.com og et par flere sider. Det kræver Python-tolken, version 2.6, 2.7 eller 3.2+, og den er ikke platformspecifik. Det skal fungere på din Unix-boks, på Windows eller på Mac OS X. Du kan også prøve >>> youtube-dl –hjælp og kontrollere de nødvendige trin for eksempel, hvis du vil downloade det fra https eller http eller fra en anden port eller noget i den stil.

Anbefalede kurser

  • XML-programmeringskurser
  • CCNA eksamenscertificeringskursus
  • Certifikationskursus i UNIX og Linux OS
  • HTML 5-programmeringstræning

Arbejde: Ønske til fødselsdag, GEEK Mode ON

Nu, hvis du ikke keder dig af denne blog, og du stadig læser denne, vil jeg til et lidt højere niveau. Lad os antage, at du er en person, der er en nørd i din gruppe af venner, og de fortæller dig altid, hvor kedelig du er, og du investerer 16 timer ud af dine 24 timer i døgnet på Computer. Derefter er dette en måde at vise, hvor fabelagtig du kan være. Nu antager jeg, at du allerede kender bit og byte af python-programmering, og jeg vil gå videre.

Lad os sige, du har en af ​​din vens fødselsdag i denne uge, og du er nødt til at gøre noget på en nørdig måde, der vil imponere alle dine venner. Lad os derefter først lave en liste over, hvad tingene er der, når du går på en fødselsdagsfest. Der vil være kager, stearinlys og fødselsdagssange, der ønsker fødselsdag. Så lad os oprette en virtuel kage, der har skygge har en udligningseffekt, der svarer til den "happy birthday" sang, der spilles i baggrunden. Her vil kagen have stearinlys, der flammer tilfældigt.

Vi vil også have en fancy visning af tillykke med fødselsdagen. Den første ting, vi skal gøre, er at importere nogle moduler for at få det til at fungere korrekt. Så her går det (og bare husk, at alt dette er et stykke kode, der skal placeres i en xyz.py-fil)

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


Lad os nu skrive en kode for bølge / mp3-fil, der skal køres, når koden udføres.

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

Bemærk: Alt skrevet i rødt eller starter med # tag er kommentarer. Værdier som korrektionsværdi, længde på sang vil variere fra person til person afhængigt af den valgte sang og andre ting. Det kan være nødvendigt, at du justerer disse ting i henhold til dit valg af sang.

Nu kommer kage-delen. Her er kodestykket, som jeg skrev til kagen. Du kan ændre visningsrøret og størrelsen på kagen afhængigt af, hvordan kagen skal se ud.

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


Nu skal vi sætte kagen på flammer, så den ser ud som et lys brænder.

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


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

Hvis du nu er på mac, skal du muligvis åbne itunes eller en anden spiller for at køre sangen. Så hvis du er på mac, skal du fjerne den nedenstående os.system-kommandokode. (Bare blot fjern hash # -tagget)

#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
”””
BEMÆRK: korrektion skal multipliceres til hviletid
Dette er på grund af flere faktorer, som det tager tid at vågne fra søvn, type terminal der bruges .. osv
Ændre korrektionens værdi for at passe til dit behov
”””
time.sleep(((float)(display_rate * t_total) / data_length)*correction)

# clear screen
if _f != data_length/display_rate-1:
os.system("clear")

raw_input()

Bemærk: Denne kode blev skrevet i python 2.7.9. Det kan være nødvendigt at foretage nogle ændringer, hvis du bruger python v3.4 / tidligere eller sidstnævnte.

Nu er dette et par eksempler, som jeg gør, når jeg keder mig. Bare ændre navnet, foretag et par ændringer for enhver anden person. Så dette gør ikke kun python-programmering interessant, men det kan også gøre dine daglige opgaver.

Du kan endda oprette din egen huskeliste eller et notesblok eller noget i den retning. Nu kan du tænke, at der er et n 'antal programmer derude, der gør det samme, hvorfor hvorfor skrive dit eget. Årsagen hertil er tilpasning. Når du køber eller downloader en software, ved du ikke, hvad der er kildekoden, eller hvis du har brug for nogle af dine egne tilpasninger, har du muligvis endda brug for at købe softwaren. Men python-programmering er så ekstremt let at forstå og skrive, at du ikke behøver at købe noget.

Desuden for at fortælle jer sandheden, begyndte jeg først at automatisere mine daglige opgaver ved hjælp af python-programmering, men senere blev jeg så interesseret, at jeg begyndte at lære alt, der er relateret til det, og nu er min jobprofil den samme; at oprette programmer i Python.

Det ville være slutningen på denne blog, men inden jeg slutter denne, vil jeg give dig nogle point, så du kan gå og tjekke nogle seje automatiske ting, som folk har gjort med python, og jeg er sikker på, at du vil blive overrasket over at se hvad folk har gjort med simpel programmering. Der er også en bog kaldet "Automatisering af kedelige ting med Python". Sørg for at kontrollere det.

Så her er min liste:

  1. Omdøbning af flere filer med en simpel kode (jeg taler om filer over 100.200 eller endda 1000)
  1. Automatisering af scripts på arbejdet (Hvis du er en systemingeniør)
  1. Oprettelse af en RSS-læser (Årsag ved brug af en indbygget en er for mainstream)
  1. Oprettelse af en adgangskodebeskyttet telefonbog (ekstremt enkel)
  1. Oprettelse af en adgangskodebeskyttet notesblok for at gemme adgangskoder og personlige dokumenter (inklusive billeder og dokumenter)
  1. Download af mp3-filer ved hjælp af smart søgning (Download MP3-filer med lignende navne direkte og tilfældigt fra internettet)

Anbefalede artikler

Her er nogle artikler, der hjælper dig med at få flere detaljer om den praktiske Python-programmering, så bare gå gennem linket.

  1. Nøgleforskelle mellem Python og JavaScript
  2. TOP Mest fantastiske Python-interviewspørgsmål og svar
  3. Karrierer i Python
  4. 10 Vigtige nyttige tip til Python-programmering
  5. Python vs Ruby Performance - Find forskellene ud