Kategória: Python.
User input
Az input() függvénnyel tudunk bekérni adatot konzolon a felhasználótól:
name = input('Username: ')
Ez esetben a program kiírja, hogy Username: , a futása megáll, a felhasználónak be kell írnia valamit, ami a name változóba kerül.
Megjegyzés: a 2-es Pythonban input() függvény nem létezett, helyette raw_input() volt.
Operációs rendszer elérés
Az os modul segítségével operációs rendszer jellegű feladatokat lehet végrehajtani: könyvtár- és fájlkezelést, felhasználókezelést, jogosultság kezelést stb. Szerteágazóak a lehetőségek; itt csak pár példát mutatok be:
import os os.getcwd() # lekérdezi az aktuális könyvtárat (GET Current Working Directory) os.listdir() # kilistázza az aktuális könyvtár tartalmát; az eredmény listába kerül os.getlogin() # lekérdezi a bejelentkezett felhasználó nevét os.environ # a környezeti változók, dict formában os.mkdir('temp') # könyvtár létrehozása os.chdir('temp') # belépés könyvtárba (CHange DIRectory) os.chdir('..') # egy szinttel feljebb lépés os.rmdir('temp') # könyvtár törlése
Dátum
A dátumkezeléshez a datetime csomagot kell importálnunk. A pillanatnyi idő kiírása:
import datetime d = datetime.datetime.now() print(d) # 2021-01-21 09:33:15.167281
Az időt többé-kevésbé megfelelő formátumban írja ki; legalábbis nem a rendkívül szerencsétlen nap-hónap-év formában. A mikroszekundumos pontosság talán kissé felesleges. Ha mégis egyéb formában szeretnénk kiírni, akkor a nem túl jól megjegyezhető strftime() hívással tudjuk megformázni, pl.:
print(d.strftime('%d %B, %Y (%A)')) # 21 January, 2021 (Thursday)
A formázó karaktereket még nehezebb megjegyezni, mint a formázó függvényt; akinek szüksége van rá, az úgyis utánanéz.
Adott időpont használata:
d = datetime.datetime(2021, 1, 21, 9, 33, 15) print(d) # 2021-01-21 09:33:15
Altatás
Ha altatni szeretnénk a programot valamennyi ideig, akkor azt a time modul sleep() függvényével tudjuk megtenni. Paraméterként az alvási időt kell megadnunk, más programozási nyelvektől eltérően sajnos nem ezredmásodpercben, hanem másodpercben (tizedes tört is megadható):
import time time.sleep(5)
Reflexió
A kód saját magát deríti fel, és akár módosíthatja el, pl.
class C: n = 5 def f(self): pass c = C() print(hasattr(c, 'n')) # True print(hasattr(c, 'o')) # False print(getattr(c, 'n')) # 5 print(hasattr(c, 'f')) # True print(hasattr(c, 'g')) # False setattr(c, 'o', 'alma') print(c.o) #'alma' delattr(C, 'n') d = C() print(d.n) # AttributeError: 'C' object has no attribute 'n'






