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
βœ…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
#python #birthday

πŸŽ‰πŸŽ‰πŸŽ‰ Python bugun 33 yoshda πŸŽ‰πŸŽ‰πŸŽ‰

Bugun Pythonning tug'ilgan kuni.

Bizning sevimli dasturlash tilimiz 33 yoshda.

Python - eng mashhur tillardan biri bo'lib qolmoqda. JetBrains tadqiqotiga ko'ra, 2023 yilda dasturchilarning 54 foizi Pythondan kamida bir marta foydalangan.

Rasmiy sayt: python.org
Pythonda Lists (ro'yxatlar):
Ro'yxatlar bitta o'zgaruvchida bir nechta elementlarni saqlash uchun ishlatiladi.
mylist = ["apple", "banana", "cherry"]
print(mylist)

result(natija): ["apple", "banana", "cherry"]

Pythonda listlar [] - to'rtburchak qavslar orqali yasaladi. List ichiga so'zlarni string format, sonlarni oddiy yozsangiz bo'ladi.
list1 = ["apple", "banana", "cherry"]
list2 = [1, 5, 7, 9, 3]
list3 = [True, False, False]

result(natija): ["apple", "banana", "cherry"]
[1, 5, 7, 9, 3]
[True, False, False]

Listlar ichidagi ma'lumotlar uning elementlari deb ataladi. Listlarda indeks sanoq 0 dan boshlanadi
Misol uchun
list1 = ["apple", "banana", "cherry"]

list1 dan "apple" 0 chi, 1-"banana" , 2-"cherry" elementlar hisoblanadi.
Ya'ni:
list1 = ["apple", "banana", "cherry"]
print(list1[0])

deydigan bo'lsak "apple" ni chiqaradi
‼️indeksga murojaat qilish
list_name[indeks_num]

list1 = ["apple", "banana", "cherry"]
print(len(list1))

result(natija): 3 chiqadi ya'ni listning uzunligi (ichidagi ma'lumotlar soni) 3 ga teng
πŸ”₯1
Pythonda ma'lumot to'plamini saqlash :
Ma'lumot to'plamini saqlashda 4 ta ma'lumot turi mavjud:

1️⃣ List - bu tartiblangan va o'zgaruvchan to'plam. Takroriy a'zolarga ruxsat beradi.
2️⃣ Tuple - bu tartiblangan va o'zgarmas to'plam. Takroriy a'zolarga ruxsat beradi.
3️⃣ Set - tartibsiz, oΚ»zgarmas* va indekslanmagan toΚ»plamdir. Takroriy a'zolar yo'q.
4️⃣ Dictionary - tartibli** va o'zgaruvchan to'plamdir (key : value). Takroriy a'zolar yo'q.
πŸ”₯1