Mavzu: Turlarni almashtrish operatorlari
Turlarni boshqaruv operatorlari bir ma'lumot turini boshqasiga o'tkazish uchun dasturlashda qo'llaniladigan maxsus operatorlardir. Ishlash operatorlarining ko'p turlari mavjud, masalan:Integer operatorlari: Butun sonlar orasiga aylantirish uchun ishlatiladi. Masalan, “int” funksiyasi o‘nlik sonni butun songa, “float” funksiyasi esa butun sonni o‘nlik songa aylantiradi.
String operatorlari: satrlar orasiga aylantirish uchun ishlatiladi. Masalan, "str" funktsiyasi raqamni satrga o'zgartiradi, "int" funktsiyasi esa satrni butun songa aylantiradi.Mantiqiy daraja operatorlari: mantiqiy qiymatlarni o'zgartirish uchun ishlatiladi. Masalan, "
Ro'yxat operatorlari: Ro'yxatlar orasiga aylantirish uchun ishlatiladi. Masalan, "ro'yxat" funksiyasi ro'yxatdagi satr yoki kortejni o'zgartiradi.
Tuple operatorlari: kortejlar orasiga aylantirish uchun ishlatiladi. Masalan, "tuple" funksiyasi ro'yxatdagi elementlarni kortejga aylantiradi.
Set operatorlari: toʻplamlar oʻrtasida konvertatsiya qilish uchun ishlatiladi. Masalan, "to'plam" funksiyasi ro'yxat yoki kortejdagi elementlarni to'plamga aylantiradi.
Lug'at operatorlari: Lug'atlar o'rtasida aylantirish uchun ishlatiladi. Masalan, "dict" funksiyasi ro'yxatdagi kortejlarni lug'atga aylantiradi.
Ushbu operatorlar dasturlashda ma'lumotlar turlarini almashtirishda juda foydali va Python kabi ko'plab zamonaviy dasturlash tillarida mavjud.
1. Implicit Type Conversion: Qachonki kichikroq ma'lumotlar turidagi qiymat kattaroq turdagi ma'lumotlar turidagi o'zgaruvchiga tayinlangan bo'lsa, konvertatsiya kompilyator tomonidan bevosita amalga oshiriladi. Masalan, qo'sh o'zgaruvchiga butun son qiymatini belgilash.
2. Ochiq turdagi konversiya: Buni matn terish deb ham atashadi. Bu dasturchi qiymatni bir ma'lumot turidan ikkinchisiga aniq o'zgartirmoqchi bo'lganda amalga oshiriladi. Ko'pgina dasturlash tillarida matn terish quyidagi ko'rinishdagi sintaksis yordamida amalga oshiriladi: (yangi_ma'lumotlar_turi) qiymati_to_bo'lish. Masalan, (int) 3.14 suzuvchi nuqta qiymatini eng yaqin butun songa yaxlitlaydi.
3. Turni rag'batlantirish: Bu aniq konversiyaning o'ziga xos turi bo'lib, arifmetik operatsiyalar davomida past aniqlikdagi (bayt yoki qisqa) operatorlar yuqori aniqlikka (float yoki double) ko'tariladi.
4. Oshib ketish va to'liq oqim: Turni o'zgartirish muayyan holatlarda to'lib ketish yoki to'ldirish xatolariga olib kelishi mumkin. Agar qiymat ma'lum bir ma'lumot turida saqlanishi mumkin bo'lgan maksimal qiymatdan kattaroq bo'lsa, ortiqcha oqim sodir bo'ladi. Qiymat ma'lumotlar turida saqlanishi mumkin bo'lgan minimal qiymatdan kichikroq bo'lganda kam oqim sodir bo'ladi. Dasturchilar oʻz dasturlarida kutilmagan nosozliklarni oldini olish uchun turlarni oʻzgartirish operatorlari haqida maʼlumotga ega boʻlishlari muhim. Turni o'zgartirish operatorlari ob'ektlarni foydalanuvchi tomonidan belgilangan turlarga aylantirish uchun ham aniqlanishi mumkin. Masalan, Fraction klassi turni o'zgartirish operatori yordamida double ga aylantirilishi mumkin. E'tibor bering, turdagi konvertatsiya operatorlaridan
Berilgan qatordagi sonlar yig‘indisini toping?
def sum_digits_string(str1):
sum_digit = 0
for x in str1:
if x.isdigit() == True:
z = int(x)
sum_digit = sum_digit + z
return sum_digit
print(sum_digits_string("123abcd45"))
print(sum_digits_string("abcd1234"))
Dostları ilə paylaş: |