Cheat sheet

Cheat sheet ng Python: syntax, mga utos at built-in na function sa mga talahanayan

Na-update: · Skillaria.Top

Ang syntax ng Python ay nakabatay sa indentation sa halip na curly braces: ang bloke sa ilalim ng colon ay nakaurong nang 4 na espasyo. Pundasyon nito ang mga variable na walang deklarasyon ng uri, mga kondisyong if/elif/else, mga loop na for at while, mga function na def, at mga built-in na function gaya ng print, len, range, input, type, pati mga method ng string, list, at dictionary.

Pinagsasama ng cheat sheet na ito sa iisang pahina ang lahat ng kailangan mo sa unang mga buwan: syntax ng Python, mga loop, built-in na function, method ng string, list, at dictionary, at mga utos sa terminal. Bawat talahanayan ay maikling sanggunian na may gumaganang halimbawa na maaaring ipasok agad sa REPL.

Mga batayan ng syntax ng Python

Ang pangunahing katangian ng wika ay ang mga bloke na tinutukoy ng indentation, hindi ng mga panaklong. Pagkatapos ng linyang may colon (if, for, def, class), ang mga sumusunod na linya ay nakaurong nang 4 na espasyo. Hindi puwedeng paghaluin ang tab at espasyo — makakakuha ka ng IndentationError.

KonstruksyonHalimbawaPaliwanag
Komento# tekstolahat ng nasa pagitan ng # at dulo ng linya ay binabalewala
Variableage = 25walang deklarasyon ng uri, tinutukoy ito ng halaga
Sabay-sabay na assignmenta, b = 1, 2unpacking; pagpapalitan ng halaga: a, b = b, a
Outputprint("Kumusta", name)pinaghihiwalay ng espasyo ang mga argumento
Inputs = input("Pangalan: ")laging nagbabalik ng string
f-stringf"{name}: {price:.2f}"pagpapalit ng expression at format
Type annotationcount: int = 0pahiwatig para sa IDE at mga checker, hindi sinusuri sa pagpapatakbo
Walang laman na blokepassplaceholder kung saan kailangan ng syntax ang katawan
Importfrom math import sqrtpag-uugnay ng module o pangalan mula rito

Mga uri ng data

UriLiteralNababago
int42, 1_000_000hindi
float3.14, 1e-3hindi
boolTrue, Falsehindi
str"teksto", 'teksto', """maraming linya"""hindi
list[1, 2, 3]oo
tuple(1, 2), (1,)hindi
dict{"a": 1}oo
set{1, 2}, walang laman — set()oo
NoneTypeNone—

Mga operator

GrupoMga operatorHalimbawa → resulta
Aritmetika+ - * / // % **7 // 2 → 3, 7 % 2 → 1, 2 ** 10 → 1024
Paghahambing== != < > <= >=1 < x < 10 — chain ng paghahambing
Lohikaand or notx or "default"
Pagiging kasapiin, not in"a" in "abc" → True
Pagkakakilanlanis, is notx is None
Assignment+= -= *= /=, :=if (n := len(s)) > 10: ...

Mga kondisyon at pattern matching

if score >= 90:
    grade = "A"
elif score >= 70:
    grade = "B"
else:
    grade = "C"

status = "matanda" if age >= 18 else "bata"   # ternary operator

match command:
    case "start":
        print("Sinisimulan")
    case "stop" | "exit":
        print("Hinihinto")
    case _:
        print("Hindi kilalang utos")

Maling halaga ang False, None, 0, walang laman na string, at walang laman na koleksyon, kaya sa halip na if len(items) > 0, isinusulat lang na if items.

Mga loop sa Python: syntax ng for at while

Loop na for

Syntax ng for loop sa Python: for variable in sequence: at ang katawan na may indentation. Umiikot ang loop sa anumang iterable — string, list, dictionary, file, o range.

for i in range(5):              # 0 1 2 3 4
    print(i)

for i in range(10, 0, -2):      # 10 8 6 4 2
    print(i)

for i, fruit in enumerate(["mansanas", "peras"], start=1):
    print(i, fruit)

for name, score in zip(names, scores):
    print(name, score)

for key, value in prices.items():
    print(key, value)

Loop na while

attempts = 3
while attempts > 0:
    password = input("Password: ")
    if password == "secret":
        print("Matagumpay ang pag-login")
        break
    attempts -= 1
else:
    print("Naubos ang mga pagsubok")   # tumatakbo kung walang naganap na break
UtosAno ang ginagawa
breaklumalabas sa loop nang maaga
continuelumilipat sa susunod na iterasyon
else ng looptumatakbo kung natapos ang loop nang walang break
range(stop), range(start, stop, step)sunod-sunod na numero, hindi kasama ang stop

List comprehensions

squares = [x ** 2 for x in range(10)]
evens = [x for x in numbers if x % 2 == 0]
lengths = {word: len(word) for word in words}
unique = {c.lower() for c in text}
total = sum(x * x for x in range(100))   # generator expression

Mga function

def greet(name: str, greeting: str = "Kumusta") -> str:
    """Nagbabalik ng pagbati."""
    return f"{greeting}, {name}!"

def total(*args, **kwargs):
    return sum(args), kwargs

square = lambda x: x * x
print(greet("Ana"))                  # Kumusta, Ana!
print(greet("Ana", greeting="Hi"))   # Hi, Ana!
ElementoKahulugan
def f(a, b=1)parameter na may default na halaga
*argsanumang bilang ng positional argument (tuple)
**kwargsanumang bilang ng named argument (dictionary)
returnnagbabalik ng halaga; kung wala ito, magbabalik ang function ng None
lambda x: ...maikling anonymous na function na isang expression lang
global, nonlocalpagbabago ng variable mula sa mas labas na scope

Huwag gumamit ng nababagong default na halaga gaya ng def f(items=[]): ginagawa ang list nang isang beses at naiipon sa pagitan ng mga tawag. Ang tama ay items=None at sa loob, if items is None: items = [].

Mga built-in na function ng Python

Magagamit ang mga built-in na function ng Python nang walang import. Ito ang mga pangunahing function na halos nasa bawat script.

FunctionAno ang ginagawaHalimbawa → resulta
print()nagpi-print ng mga halagaprint(1, 2, sep="-") → 1-2
input()bumabasa ng string mula sa keyboardint(input())
len()haba ng koleksyon o stringlen("abc") → 3
type()uri ng objecttype(3.0) → <class 'float'>
isinstance()pagsusuri ng uriisinstance(5, int) → True
int() float() str() bool()conversion ng uriint("42") → 42
list() tuple() set() dict()paggawa ng koleksyonlist("ab") → ['a', 'b']
range()saklaw ng mga numerolist(range(3)) → [0, 1, 2]
enumerate()mga pares na (index, elemento)list(enumerate("ab")) → [(0, 'a'), (1, 'b')]
zip()pinagdudugtong ang mga sequence nang pares-pareslist(zip([1, 2], "ab")) → [(1, 'a'), (2, 'b')]
sum() min() max()kabuuan, pinakamaliit, pinakamalakimax([3, 7, 1]) → 7
abs() round()absolute value at pag-roundround(3.14159, 2) → 3.14
sorted()bagong nakaayos na listsorted(words, key=len, reverse=True)
reversed()iterator sa baligtad na pagkakasunodlist(reversed([1, 2])) → [2, 1]
map() filter()ilapat ang function / salainlist(map(str, [1, 2])) → ['1', '2']
any() all()kahit isa / lahat ay totooall(x > 0 for x in nums)
open()nagbubukas ng fileopen("a.txt", encoding="utf-8")
help() dir()tulong at listahan ng attributehelp(str.split), dir(list)
id() hash()identifier at hash ng objecthash("a")

Ang pinakamadaling python reference ay laging nasa kamay mo — ang function na help() sa REPL: ipapakita ng help(dict) ang lahat ng method ng dictionary na may paglalarawan, at ang dir(obj) ay ang listahan ng magagamit na pangalan.

Mga method ng string

Syntax ng string sa Python: hindi nababago ang string, at bawat method ay nagbabalik ng bagong string. Gumagana ang mga slice gaya ng sa list: s[1:4], s[::-1] — pagbaligtad.

MethodHalimbawa → resulta
upper() lower()"Py".upper() → 'PY'
capitalize() title()"hello world".title() → 'Hello World'
strip() lstrip() rstrip()" hi \n".strip() → 'hi'
split(sep)"a,b,c".split(",") → ['a', 'b', 'c']
join(iterable)"-".join(["a", "b"]) → 'a-b'
replace(old, new)"bata".replace("b", "k") → 'kata'
find() index()"hello".find("l") → 2; kung wala — -1 (sa index — error)
count()"banana".count("a") → 3
startswith() endswith()"file.py".endswith(".py") → True
isdigit() isalpha() isspace()"123".isdigit() → True
removeprefix() removesuffix()"test_a".removeprefix("test_") → 'a'
zfill() center() ljust()"7".zfill(3) → '007'
format()"{} + {}".format(1, 2) → '1 + 2'

Mga utos ng list sa Python

Ang list ay nababagong, nakaayos na koleksyon. Karamihan ng method ay nagbabago ng list sa mismong lugar at nagbabalik ng None, kaya ang a = a.sort() ay karaniwang pagkakamali.

OperasyonAno ang ginagawaHalimbawa
append(x)nagdaragdag sa duloa.append(4)
extend(iter)nagdaragdag ng lahat ng elementoa.extend([5, 6])
insert(i, x)nagsisingit sa indexa.insert(0, "first")
remove(x)nagbubura ng unang paglitaw ng halagaa.remove(3)
pop(i)nagbubura at nagbabalik ng elemento (default ang huli)last = a.pop()
clear()nililinis ang lista.clear()
index(x)index ng unang paglitawa.index("b")
count(x)bilang ng paglitawa.count(1)
sort()nag-aayos sa mismong lugara.sort(key=str.lower)
reverse()binabaligtad sa mismong lugara.reverse()
copy()shallow na kopyab = a.copy()
del a[i]pagbura ayon sa index o slicedel a[1:3]
Mga slicea[start:stop:step]a[-1] — ang huli, a[:3] — unang tatlo

Mga utos ng dictionary sa Python

OperasyonAno ang ginagawaHalimbawa
d[key]halaga ayon sa susi, kung walang susi — KeyErrord["name"]
get(key, default)halaga o kapalitd.get("age", 0)
d[key] = valuemagdagdag o magbagod["city"] = "Maynila"
keys() values() items()mga susi, halaga, paresfor k, v in d.items():
update()pagsasama sa ibang dictionaryd.update({"a": 1})
d1 | d2bagong pinagsamang dictionarymerged = defaults | user
pop(key, default)magbura at magbalik ng halagad.pop("tmp", None)
popitem()magbura ng huling idinagdag na paresd.popitem()
setdefault(key, value)ibalik ang halaga, o gumawa kung walang susid.setdefault("tags", []).append("py")
key in dpagsuri kung may susiif "name" in d:
dict.fromkeys()dictionary mula sa mga susi na may iisang halagadict.fromkeys("abc", 0)
len(d), del d[key]laki at pagburadel d["old"]

Mga tuple at set

OperasyonHalimbawa → resulta
Unpacking ng tuplex, y = (3, 4)
Magdagdag sa sets.add(5), magbura — s.discard(5)
Union / intersection{1, 2} | {2, 3} → {1, 2, 3}; {1, 2} & {2, 3} → {2}
Difference{1, 2} - {2} → {1}
Pag-alis ng duplicate sa listlist(dict.fromkeys(items)) — pinananatili ang pagkakasunod

Mga exception at file

try:
    number = int(input("Numero: "))
except ValueError as err:
    print("Hindi ito numero:", err)
else:
    print("Tagumpay")
finally:
    print("Laging tumatakbo")

with open("data.txt", "w", encoding="utf-8") as f:
    f.write("linya\n")

with open("data.txt", encoding="utf-8") as f:
    for line in f:
        print(line.rstrip())
ExceptionKailan ito lumilitaw
SyntaxError, IndentationErrorerror sa syntax o indentation
NameErrorhindi natukoy ang pangalan (typo)
TypeErroroperasyon sa hindi angkop na uri: "1" + 1
ValueErrortamang uri, pero maling halaga: int("abc")
IndexError, KeyErrorwalang ganoong index o susi
FileNotFoundErrorhindi nakita ang file
ZeroDivisionErrorpaghahati sa zero

Mga class

from dataclasses import dataclass

class Dog:
    def __init__(self, name: str):
        self.name = name

    def bark(self) -> str:
        return f"{self.name}: Aw!"

@dataclass
class Point:
    x: float
    y: float

print(Dog("Bantay").bark())   # Bantay: Aw!
print(Point(1, 2))            # Point(x=1, y=2)

Mga built-in na module ng Python

Kasama ng interpreter ang standard library — sapat na ang import.

ModulePara saanHalimbawa
mathmatematikamath.sqrt(16) → 4.0
randomrandom na numerorandom.randint(1, 6), random.choice(items)
datetimepetsa at orasdatetime.date.today()
pathlibmga path at filePath("data").glob("*.csv")
os, syssistema, environment variable, argumentoos.environ.get("HOME"), sys.argv
jsonpagbasa at pagsulat ng JSONjson.loads(text), json.dumps(obj, ensure_ascii=False)
csvmga talahanayan ng CSVcsv.DictReader(f)
collectionsCounter, defaultdict, dequeCounter("banana").most_common(1) → [('a', 3)]
itertoolsmga kombinasyon at chain ng iteratoritertools.chain(a, b)
reregular expressionre.findall(r"\d+", s)
timepag-pause at pagsukat ng orastime.sleep(1), time.perf_counter()
asyncioasynchronous na codeasyncio.run(main())

Sa Python 3.15, lumitaw ang lazy import (PEP 810): ang lazy import pandas as pd ay ipinagpapaliban ang pag-load ng module hanggang sa unang paggamit nito, kaya mas mabilis mag-start ang script na may mabibigat na dependency.

Mga utos ng Python sa terminal

Hiwalay na grupo ng mga tanong ang «python commands» — ito ang mga utos para patakbuhin ang interpreter at mag-install ng library. Sa Windows, kadalasang python o py ang isinusulat sa halip na python3.

UtosAno ang ginagawa
python3 --versionipakita ang bersyon
python3buksan ang interactive na console na REPL (labas — exit())
python3 script.pypatakbuhin ang file
python3 -c "print(2 + 2)"patakbuhin ang isang linya
python3 -m venv .venvgumawa ng virtual environment
source .venv/bin/activate / .venv\Scripts\activatei-activate ang environment (Linux, macOS / Windows)
python3 -m pip install requestsmag-install ng package
pip list, pip freeze > requirements.txtlistahan ng mga package at pag-save nito
pip install -r requirements.txtmag-install ng dependencies mula sa file
python3 -m http.server 8000simpleng web server sa kasalukuyang folder
uv init, uv add requests, uv run main.pyproyekto, dependency, at pagpapatakbo gamit ang uv

Mga karaniwang pagkakamali ng mga baguhan

  • Paghahambing gamit ang = — sa kondisyon, kailangan ang ==; ang iisang = ay assignment.
  • Nakalimutang colon pagkatapos ng if, for, def — nagdudulot ng SyntaxError.
  • Pagdaragdag ng string at numero: "Edad: " + 25 ay error; isulat ang f"Edad: {25}".
  • Pagbabago ng list habang umiikot — umikot sa kopya gamit ang for x in a[:] o bumuo ng bagong list.
  • input() ay nagbabalik ng string — para sa aritmetika, balutin ito ng int() o float().

Buod

Nakasandig ang syntax ng Python sa indentation, colon, at isang maliit na hanay ng konstruksyon: mga kondisyon, loop na for at while, function, at class. Idagdag ang dalawampung built-in na function at mga method ng string, list, at dictionary — at masasakop mo na ang karamihan sa araw-araw na gawain. I-save ang cheat sheet, at kapag nasanay ka na sa mga talahanayan, lumipat sa mga module at asynchronous na programming; hakbang-hakbang na ipinaliwanag ang lahat ng ito sa praktika sa kursong «Python 3.15: mula baguhan hanggang propesyonal».

Mga madalas itanong

Ilang espasyo ang dapat gamitin sa indentation sa Python?

Ayon sa PEP 8, 4 na espasyo bawat antas. Ang mahalaga ay pare-pareho ito sa buong bloke at hindi hinahaluan ng tab.

Ano ang pagkakaiba ng list at tuple?

Nababago ang list, maaari itong dagdagan at ayusin sa mismong lugar; hindi nababago ang tuple, kaya angkop itong maging susi ng dictionary at para sa mga nakapirming set ng halaga.

Paano makikita ang lahat ng method ng isang object sa Python?

Tawagin ang dir(obj) para sa listahan ng mga pangalan at help(obj) para sa paglalarawan — halimbawa, ang help(str) ay magpapakita ng lahat ng method ng string.

Ano ang pagkakaiba ng sort() at sorted()?

Inaayos ng method na list.sort() ang mismong list at nagbabalik ng None, habang ang function na sorted() ay nagbabalik ng bagong list at gumagana sa anumang iterable.

Kailangan ba ng semicolon sa dulo ng linya?

Hindi. Puwede ang semicolon para sa ilang utos sa iisang linya, pero sa karaniwang code, isinusulat ang bawat instruksyon sa sariling linya.