Afbeeldingsbron: pixabay.com
Welkom bij mijn volgende blog over Python Programming. Ik ben hier weer om je een aantal verslavende tips over Python te geven. Maar deze keer is het niet gebaseerd op Hacking, Phreaking of Security Breaking. Het gaat om het gebruik van python-programmering voor onze dagelijkse taken. Dus laten we beginnen.
Wat is programmeren? Maak je geen zorgen. Ik ben hier niet om je de typische definitie van programmeren te geven. Het onderdeel waar ik hier vandaag over ga praten, is het gebruik van programmeren in ons dagelijks leven, en hoe het ons helpt dingen te automatiseren.
Python-programmering voor niet-ingenieurs
Vervelende taken
Iedereen in ons leven is geen software-ingenieur. Maar toch, iedereen heeft zijn spullen waarmee ze moeten omgaan. Maar programmeren is een ding dat veel dingen gemakkelijker kan maken. We hebben allemaal veel te doen dingen in ons dagelijkse schema. En in plaats van dat we dat bijhouden, kunnen we de machine deze dingen laten regelen. We kunnen onze taken automatiseren met behulp van eenvoudige programmering. Hoewel er daar veel commerciële software is, maar we kunnen niet overal geld aan uitgeven. Ook zullen ze niet zijn volgens onze eigen aangepaste behoeften. Bovendien is het creëren van ons eigen programma een heel ander niveau. De beste taal die ik vanaf nu kan bedenken is programmeren met Python. Laat me je vertellen hoe.
Python v / s De wereld
Als je eerder enige kennis van programmeren hebt, vooral C of C ++, weet je misschien hoe vervelend het is om een programma te maken en het vervolgens te debuggen om er een schoon programma van te maken. Maar dat is niet het geval met Python. En zelfs in tegenstelling tot Java, Assembly, JavaScript of een andere taal, heeft python niet die moeilijk te onthouden syntaxis.
Python is uiterst gebruiksvriendelijk en heeft een gedefinieerde manier om dingen te doen. In tegenstelling tot ruby, wat een andere competitie is voor python programmeren, waar ruby te gebruiksvriendelijk is en veel manieren heeft om een enkele python te doen, biedt python dat niet. Python-programmering heeft inspringingen en een door de gebruiker leesbare code.
Een van de beste voorbeelden die ik kan bedenken is dit. Zo nu en dan, of voor sommige mensen, hebben we de gewoonte om zo nu en dan video's van youtube te downloaden. We kunnen deze video's dus zeker downloaden door willekeurige software van internet te downloaden en te gebruiken. Maar soms is het niet zo eenvoudig. De meeste software op het web is gevuld met Trojaanse paarden en virussen.
Je kunt er dus niet eenvoudig op vertrouwen. God weet het, wat voor soort logische bom is er eigenlijk doorgedrongen in die software. Dus in plaats van de mensheid door al deze problemen te loodsen, hebben we een python-programmering om onszelf te redden van al deze problemen. Ik heb dit ergens lang geleden op internet gevonden en gebruik het sindsdien. Hiermee kun je eenvoudig YouTube-video's downloaden met een eenvoudige opdracht.
Dus hier is hoe het gaat:
Stap 1: Installeer Python, pip en zorg ervoor dat u omgevingsvariabelen selecteert tijdens de installatie, zodat u python vanaf de opdrachtregel overal kunt oproepen.
Stap 2: Gebruik deze opdracht om de YouTube-module te downloaden
>>>pip install youtube-dl
Stap 3: Klaar. Dat is het. Geen stap 3. Wanneer u nu een video moet downloaden, gebruikt u gewoon deze opdracht op de opdrachtregel en downloadt u uw video:
>>>youtube-dl (OPTIONS) URL (URL…)
Nu heb je misschien een exact idee waar ik het over had. Is dit niet zo eenvoudig in plaats van het downloaden van Trojaned-software van internet?
Houd er rekening mee dat youtube-dl een klein opdrachtregelprogramma is om video's te downloaden van YouTube.com en nog een paar sites. Het vereist de Python-interpreter, versie 2.6, 2.7 of 3.2+, en het is niet platformspecifiek. Het zou moeten werken op uw Unix-box, op Windows of op Mac OS X. U kunt ook >>> youtube-dl –help proberen en de nodige stappen controleren, bijvoorbeeld als u het wilt downloaden van https of http of van een andere poort of zoiets.
Aanbevolen cursussen
- XML programmeercursussen
- CCNA examencertificatiecursus
- Certificatiecursus in UNIX & Linux OS
- HTML 5 programmeertraining
Werk: Gelukkige verjaardag wensen, GEEK-modus AAN
Nu, als je deze blog niet verveelt, en je leest dit nog steeds, zal ik naar een iets hoger niveau gaan. Laten we aannemen dat je een nerd bent in je vriendengroep, en ze blijven je vertellen hoe saai je bent, en je investeert 16 uur van je 24 uur per dag op Computer. Dan is dit een manier om te laten zien hoe fantastisch je kunt zijn. Nu ga ik ervan uit dat je al bits en bytes van python-programmering kent, en ik ga verder.
Laten we zeggen dat je deze week een verjaardag van je vriend hebt en dat je iets op een geeky manier moet doen dat indruk op jullie allemaal zal maken. Laten we eerst een lijst maken van wat er allemaal is als je naar een verjaardagsfeest gaat. Er zullen Cakes, Candles en Birthday-nummers zijn die Happy birthday wensen. Laten we dus een virtuele cake maken waarvan de schaduw een equalizereffect heeft dat overeenkomt met het nummer 'gelukkige verjaardag' dat op de achtergrond wordt gespeeld. Hier zal de cake kaarsen hebben met vlammen die willekeurig fladderen.
We zullen ook een mooie weergave van gelukkige verjaardag bericht hebben. Het eerste dat we moeten doen, is een aantal modules importeren om het correct te laten werken. Dus hier komt het (en onthoud dat dit allemaal één stuk code is dat in één xyz.py-bestand moet worden geplaatst)
>>>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
Laten we nu een code schrijven voor het wave / mp3-bestand dat moet worden uitgevoerd wanneer de code wordt uitgevoerd.
>>>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
Opmerking: alles in rood geschreven of beginnend met # tag zijn opmerkingen. De waarden zoals correctiewaarde, lengte van het nummer verschillen van persoon tot persoon, afhankelijk van het gekozen nummer en andere dingen. Mogelijk moet u deze dingen aanpassen volgens uw nummerkeuze.
Nu komt het cakegedeelte. Hier is het stukje code dat ik voor de taart heb geschreven. Je kunt de weergavetekens en de grootte van de cake aanpassen, afhankelijk van hoe de cake eruit moet zien.
>>>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 moeten we de cake in vlammen zetten, zodat het lijkt alsof een kaars brandt.
flame_flutter_rate = 50
FLAMES = ( " . ", ". ", " ." ) current_flame = ""os.system("tput civis") #hide cursor
Als je nu een Mac gebruikt, moet je itunes of een andere speler openen om het nummer te kunnen spelen. Dus als je een mac gebruikt, laat dan de onderstaande os.system-opdrachtcode ongedaan (verwijder gewoon de hash # -tag)
#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
“””
OPMERKING: correctie moet worden vermenigvuldigd met de slaaptijd
Dit komt door verschillende factoren, zoals de tijd die nodig is om uit de slaap te ontwaken, het type terminal dat wordt gebruikt … enz
VERANDER de WAARDE van correctie OM AAN UW BEHOEFTE TE PASSEN
“””time.sleep(((float)(display_rate * t_total) / data_length)*correction)
# clear screen
if _f != data_length/display_rate-1:
os.system("clear")
raw_input()
Opmerking: deze code is geschreven in python 2.7.9. Het is mogelijk dat u enkele wijzigingen moet aanbrengen als u python v3.4 / vroeger of later gebruikt.
Dit zijn een paar voorbeelden die ik doe als ik me verveel. Verander gewoon de naam, breng een paar wijzigingen aan voor elke andere persoon. Dit maakt dus niet alleen het programmeren van python interessant, maar het kan ook uw dagelijkse taken uitvoeren.
Je kunt zelfs je eigen takenlijst of een notitieblok of iets dergelijks maken. Nu denk je misschien dat er zoveel programma's zijn die hetzelfde doen, waarom zou je dan je eigen programma schrijven. De reden daarvoor is maatwerk. Wanneer u software koopt of downloadt, weet u niet wat de broncode is of als u enkele van uw eigen aanpassingen nodig hebt, dan moet u misschien zelfs de software aanschaffen. Maar het programmeren van python is zo extreem gemakkelijk te begrijpen en te schrijven dat u niets hoeft te kopen.
Trouwens, om je de waarheid te vertellen, begon ik eerst mijn dagelijkse taken te automatiseren met behulp van python-programmering, maar later raakte ik zo geïnteresseerd dat ik alles begon te leren dat daarmee verband hield en nu is mijn functieprofiel hetzelfde; om programma's in Python te maken.
Dat zou het einde van deze blog zijn, maar voordat ik dit beëindig, zal ik je wat punten geven, zodat je kunt gaan kijken naar een aantal coole automatiseringsdingen die mensen met python hebben gedaan en ik weet zeker dat je verrast zult zijn om te zien wat mensen hebben gedaan met eenvoudig programmeren. Er is ook een boek met de naam "Saaie dingen automatiseren met Python". Zorg dat je dat controleert.
Dus hier komt mijn lijst:
- Meerdere bestanden hernoemen met een eenvoudige code (ik heb het over bestanden van meer dan 100.200 of zelfs 1000)
- Scripts automatiseren op het werk (als u een systeemingenieur bent)
- Een RSS-lezer maken (omdat het gebruik van een ingebouwde lezer te mainstream is)
- Een met een wachtwoord beveiligd telefoonboek maken (uiterst eenvoudig)
- Een met een wachtwoord beveiligd notitieblok maken om wachtwoorden en persoonlijke documenten (inclusief afbeeldingen en documenten) op te slaan
- Mp3-bestanden downloaden met slim zoeken (mp3-bestanden met vergelijkbare namen rechtstreeks en willekeurig van internet downloaden)
Aanbevolen artikelen
Hier zijn enkele artikelen die u zullen helpen om meer details over de praktische Python-programmering te krijgen, dus ga gewoon via de link.
- Python versus JavaScript Belangrijkste verschillen
- TOP Meest verbazingwekkende vragen en antwoorden over Python
- Carrières in Python
- 10 Belangrijke nuttige tips voor het programmeren van Python
- Python vs Ruby Performance - Ontdek de verschillen