PYTHON🔤🆓
56 subscribers
43 photos
41 videos
11 files
56 links
Python dasturlash tilini birga o'rganamiz🤓🫡. Learning python together. Tips and tricks. With real projects.
Contact me: @imsafarov
Download Telegram
Channel created
Assalomu aleykum. Bu kanalga python dasturlash tiliga oid postlar joylab boraman. Pythonni birga o'rganamiz. Inshaalloh manfaatli bo'ladi degan umiddaman.
2
Python ([ˈpʌɪθ (ə)n] — payton, piton) — turli sohalar uchun yuqori darajadagi umumiy maqsadli dasturlash tili. Uning dizayn falsafasi muhim chekinishdan foydalangan holda kodning oʻqilishiga urgʻu beradi. Uning til konstruksiyalari va obyektga yoʻnaltirilgan yondashuvi dasturchilarga kichik va yirik loyihalar uchun aniq, mantiqiy kod yozishda yordam berishga qaratilgan. Shuningdek Python sunʼiy intellekt hamda maʼlumotlar muhandisiligi sohalarining tili hisoblanadi.

Python deyarli barcha platformalarda ishlay oladi, xususan Windows, Linux, Mac OS X, Palm OS, Mac OS va boshqalar shular jumlasidandir. Python Microsoft.NET platformasi uchun yozilgan realizatsiyasi ham mavjud boʻlib, uning nomi — IronPython dasturlash muhitidir.

Guido van Rossum 1980-yillarning oxirida ABC dasturlash tilining davomchisi sifatida Python ustida ishlay boshladi va birinchi marta 1991-yilda Python 0.9.0 versiyasini ommaga eʼlon qildi.

Python dasturlash tiliga boʻlgan talab yildan yilga oshib bormoqda. CodingDojo portalining tadqiqotlariga koʻra, 2020—2021-yillarda aynan Python tilida dasturlovchi mutaxassislarga eng koʻp talab boʻlgan.
This media is not supported in your browser
VIEW IN TELEGRAM
Turli dasturlash tillarida ma'lumotni consolega chiqarish (Chop etish).
Turli sohalar uchun kerak bo'ladigan dasturlash tillari.
cmd hacks
color a & tree

Internet
color a & curl parrot.live

Internet
color 2 & curl ascii.live/forrest

Internet
color 2 & curl ascii.live/rick

Internet
Sinab ko'rib reaksiya bosish esdan chiqmasin😜
Pythonda komentariyalar:
Bitta qatorga komentariya yozish uchun qator boshiga # (hashtag) qo'yiladi.
# This is a comment

Agar komentariyalar bir qatordan ortiq bo'lsa, komentariya yozish uchun komment boshiga va oxiriga """ - 3 ta qo'shtirnoq yoki ''' - 3 ta birtirnoq qo'yiladi.
"""This
is
a
comment"""

'''This
is
a
comment'''
❗️Ha aytgancha python dasturlash tilida birinchi bilish kerak bo'lgan narsamiz, chop etish print() methodi orqali amalga oshiriladi.
print("Hello World")
Pythonda o'zgaruvchilar:

1. str (string - matn) # x = "salom"
2. int (integer - butun son) # x = 4
3. float (float - haqiqiy son) # x = 4.0
O'zgaruvchilar type (turini) bilish uchun type() methodidan foydalaniladi.
x = "salom"
print(type(x))
string
Pythonda ma'lumot turlari.
Python dasturlash tilida quyidagi operatorlar mavjud:

1. Arifmetik operatorlar:
'+' qo'shish
'-' ayirish
'*' ko'paytirish
'/' bo'lish
'//' butun bo'lish
'%' qoldiqni olish
darajaga oshirish
a = 5
b = 2

sum_result = a + b
difference_result = a - b
product_result = a * b
division_result = a / b
floor_division_result = a // b
modulus_result = a % b
power_result = a b

print("Sum:", sum_result)
print("Difference:", difference_result)
print("Product:", product_result)
print("Division:", division_result)
print("Floor Division:", floor_division_result)
print("Modulus:", modulus_result)
print("Power:", power_result)
2. Ta'riflash (Comparison) operatorlari:
'==' tengmi
'!=' teng emas
'<' kichik
'>' katta
'<=' kichik yoki teng
'>=' katta yoki teng
x = 10
y = 5

equal_result = x == y
not_equal_result = x != y
less_than_result = x < y
greater_than_result = x > y
less_than_or_equal_result = x <= y
greater_than_or_equal_result = x >= y

print("Equal:", equal_result)
print("Not Equal:", not_equal_result)
print("Less Than:", less_than_result)
print("Greater Than:", greater_than_result)
print("Less Than or Equal:", less_than_or_equal_result)
print("Greater Than or Equal:", greater_than_or_equal_result)

3. Mantikaviy (Logical) operatorlar:
'and' va
'or' yoki
'not' emas
p = True
q = False

and_result = p and q
or_result = p or q
not_result_p = not p
not_result_q = not q

print("AND:", and_result)
print("OR:", or_result)
print("NOT P:", not_result_p)
print("NOT Q:", not_result_q)
👍2
Python numbers (sonlar)0️⃣1️⃣2️⃣3️⃣:
Pythonda uchta raqamli tur mavjud:
1. int
2. float
3. complex
x = 1    # int
y = 2.8 # float
z = 1j # complex
👍1
Pythonda strings (satrlar)🔤:
1. O'zgaruvchiga bitta satrni yuklash:
a = "Hello"
print(a)

Result (natija): Hello
2. O'zgaruvchiga ko'p qatorli satrni yuklash:
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)

Result (natija): qanday yozilgan bo'lsa shunday holda chiqadi, nuqta, vergul, probeligacha.
Xuddi commentga o'xshab 👆
Pythonda strings (satrlar)🔤:
1. String ichidagi harfni pozitsiyasiga qarab olish:
a = "string_ichidagi_so'z"
print(a[position_number]

Misol:
a = "Hello World!"
print(a[1])

Result (natija): e harfi chiqadi.
❗️Eslatma: dasturlash tillarida sanoq 0 dan boshlanadi.
Yuqoridagi misolda:
H e l l o W o r l d
0 1 2 3 4 5 6 7 8 9 10
Probel (bo'sh joy ham hisoblanadi) print(a[5]) deganimizda bo'sh joyni ya'ni hech nimani chiqarmas edi.
2. len() funksiyasi yordamida string uzunligini aniqlash mumkin (bunda probel (bo'sh joy) ni ham hisobga oladi):
a = "Hello, World!"
print(len(a))

Result(natija): 13 chiqadi.
👍1
Python - Slicing String (satrlarni kesish)🔤:
1. 2-pozitsiyadan 5-pozitsiyagacha belgilarni kesish:
b = "Hello, World!"
print(b[2:5])

result(natija): llo qismi chiqadi.
❗️Kesib olish uchun [first_num:second_num] 2 ta son berilganda, first_num (birinchisi) ni hisobga olmaydi , ya'ni [2:5] da 2 dan emas 3 dan boshlab olib ketadi, 3 chi, 4 chi ba 5 chidagi belgilarni oldi.
2. Boshidan 5-pozitsiyagacha belgilarni kesish:
b = "Hello, World!"
print(b[:5])

result(natija): Hello , qismi chiqadi. first_num (birinchisi) berilmasa default 0 ni oladi.
3. 2-chi pozitsiyadan oxirgacha kesish:
b = "Hello, World!"
print(b[2:])

result(natija): llo World , chiqadi. second_num (ikkinchi son) berilmasa oxirgacha oladi.
4. Stringda sanoqni teskari olish:
b = "Hello, World!"
print(b[-5:-2])

result(natija): orl , chiqadi.
Chunki:
H e l l o W o r l d
-11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
Xuddi boyagidek 👆
❗️Eslatma: bunda e'tibor berish first_num (birinchi son) -5 ga teng, shuning uchun -5 dan emas -4 dan boshlab olib ketadi.
(Manfiy tartiblash telefonda xunuk chiqib qoldi, kompyuterdan kirsayiz norm turadi)
Pythonda satrlarga qo'shimcha (so'z yoki son) qo'shish🔤:
1. format() metodi orqali:
age = 36
txt = "My name is John, and I am {}"
print(txt.format(age))

result(natija): My name is John, and I am 36 . chiqadi
❗️format() metodi text ning ichidan {} qavsni topib, shuning o'rniga, o'ziga berilgan qiymatni ya'ni age qo'yib qo'yadi.
1️⃣Bu usuldan ko'proq o'zgaruvchilar uchun foydalanish ham mumkin
quantity = 3
itemno = 567
price = 49.95
myorder = "I want {} pieces of item {} for {} dollars."
print(myorder.format(quantity, itemno, price))

result(natija): I want quantity pieces of item itemno for price dollars . chiqadi
❗️ Bu yerda ham format() metodi {} qavslarni birin ketin qidirib topib, o'ziga berilgan qiymatlarni birin ketin qo'yayapti.
2️⃣format() metodagi elementlar tartibini o'zimiz belgilasak ham bo'ladi.
quantity = 3
itemno = 567
price = 49.95
myorder = "I want to pay {2} dollars for {0} pieces of item {1}."
print(myorder.format(quantity, itemno, price))

result(natija): I want to pay 49.95 dollars for 3 pieces of item 567 . chiqadi.
🔥1
Pythonda stringda yozishda "qo'shtirnoq" yoki 'birtirnoq' dan foydalaniladi. Stringni qaysi birida yaratdganingizdan qat'iy nazar, shu string ichida yana shu belgidan foydalansangiz xatolik beradi.
txt =  "We are the so-called "Uzbeks" from the Central Asia." 

Bunda syntaktik xato beradi.
😎 ammo buni ham iloji bor.
Biz ichkarida kelgan belgi (" , ') oldidan \ (backslash) ishlatsak xato bermaydi.
txt =  "We are the so-called \"Uzbeks\" from the Central Asia."

Bizda yana shunaqa belgilardan:
1. \n mavjud. Bu belgilardan keyin yozilganlar pastki qatorga tushib ketadi
a = "Hello\nWorld"

result(natija):
Hello
Wordl

2. \t bu o'zidan keyingi yozuvlarni bitta tab oldinga suradi.
txt = "Hello\tWorld!"
print(txt)

result(natija): Hello World
3. \b bu (\t) ning teskarisi, ya'ni o'zidan oldin qancha bosh joy bo'lsa olib tashlaydi.
txt = "Hello    \bWorld!"
print(txt)

result(natija): HelloWorld
Pythonda String methodlari🔤:
Methodlar bu ma'lum vazifani bajarish uchun mo'ljallangan, tayyor yozilgan funksiyalar.
Yozilish tartibi
string_nomi.method_nomi()

1️⃣. capitalize()
Textning birinchi harfini ya'ni so'zboshini bosh harf qilib beradi.
txt = "hello, and welcome to my world."
x = txt.capitalize()
print (x)

result(natija): Hello, and welcome to my world.
2️⃣.title()
Textdagi barcha so'zlarning birinchi harfini bosh harf qilib beradi.
txt = "Welcome to my world"
x = txt.title()
print(x)

result(natija): Welcome To My World
3️⃣.upper()
Textdagi barcha harflarni katta harf qilib beradi.
txt = "Hello my friends"
x = txt.upper()
print(x)

result(natija): HELLO MY FRIENDS
4️⃣.lower()
Textdagi barcha harflarni kichik harf qilib beradi.
txt = "HELLO my FRIENDS"
x = txt.upper()
print(x)

result(natija): hello my friends
5️⃣.split()
Textdagi so'zlarni default probelga (bo'sh joyga) qarab kesib olib listga joylaydi.
txt = "welcome to the jungle"
x = txt.split()
print(x)

result(natija): ['welcome', 'to', 'the', 'jungle'].
Bular string methodlarining bir qismi. Ko'proq ma'lumot olish uchun
🔂https://www.w3schools.com/python/python_ref_string.asp
Pythonda booleans🅱️:
Boolean ma'lumot turi ikkita qiymat qaytaradi: True va False
print(10 > 9)
print(10 == 9)
print(10 < 9)

result(natija):
True
False
False
Qiymat va o'zgaruvchilarni baholashda bool() funksiyasidan foydalanamiz. Bizga True yoki False qaytaradi.
print(bool("Hello"))
print(bool(15))

result(natija):
True
True
‼️Bunda har string yoki son yuklatilgan o'zgaruvchi da bitta bo'lsa ham harf yoki ❗️0 dan tashqari istalgan son bo'lsa ham True qaytaradi. O'zgaruvchi bo'sh bo'lsa ya'ni unda umuman ma'lumot bo'lmasa yoki 0 ga teng bo'lsa bool() funksiya False qaytaradi.
bool(False)
bool(None)
bool(0)
bool("") #string
bool(()) #tuple
bool([]) #list
bool({}) #dict bularni keyinchalik o'tamiz

result(natija):
False
False
False
False
False
False
False
Python operatorlarni quyidagi guruhlarga ajratadi↙️:

1. Arifmetik operatorlar
2. Belgilash operatorlari
3. Taqqoslash operatorlari
4. Mantiqiy operatorlar
5. Identifikatsiya operatorlari
6. A'zolik operatorlari
7. Bitli operatorlar
👆Yuqorida bazilari haqida ma'lumot berganman: https://t.me/python_core_oop/17
🔂Ko'proq ma'lumot uchun: https://www.w3schools.com/python/python_operators.asp