Python. Fayllar bilan ishlash.zip
4.6 KB
Python fayllari. Fayllar bilan ishlash (Amaliyot)
This media is not supported in your browser
VIEW IN TELEGRAM
Amaliyot. Pytohon. Fayllarni o'qish.
12- Dars. Sanoq sistemasining ishlatilishi
Maktab kursidagi informatika faninidan bizga ma’lumki, sonlar nafaqat o`nlik
sanoq sistemasida balki boshqa sanoq sistemalarida ham bo`lishi mumkin. Masalan:
kompyuter ikkilik sanoq sistemasidan foydalanadi ya’ni 19-soni ikkilik sanoq
sistemasida (kompyuterda) 10011 ko`rinishida ifodalanadi. Bundan tashqari
sonlarni bir sanoq sistemasidan ikkinchi sanoq sistemasiga o`tkazish kerak. Python
bu uchun bir qancha funksiyalarni taqdim etadi:
int([object],[sanoq sistemasi asosi])- butun sonni berilgan sanoq sistemasidan
o`nlik sanoq sistemasiga o`tkazadi.
bin(x)- butun sonni ikkilik sanoq sistemasiga o`tkazadi
hex(x)- butun sonni o`n oltilik sanoq sistemasiga o`tkazadi
oct(x)- butun sonni sakkizlik sanoq sistemasiga o`tkazadi.
sanoq sistemasi
Son
Sonlar Python dasturlash tilida 3 turda bo'ladi:
1. butun sonlar,
2. haqiqiy sonlar
3. kompleks sonlar
. Butun songa misol 2,5, …
. Haqiqiy sonlarga misol 3.23 va 52.3e-4.
. Kompleks sonlarga misol (-5+4i) va (2.3-4.6i)
Butun sonlar
Python interpretatorida yuqorida operator va ifodalar mavzusida ko`rib
chiqqan barcha operatorlarni oddiy matemetika kursida ishlatilganidek bajarilishini
ko`rdik. Ya’ni ko`paytirish, qo`shish, ayirish, bo’lish, darajaga ko`tarish va hokazo.
Endi esa butun sonlar ustida bajarish mumkin bo`lgan qo`shimcha metodlarni
ko`ramiz.
int.bit_length()- sonni oldidagi ishora va nollarni hisobga olmasdan uni ikkilik
sanoq sistemasida taqdim etish uchun kerakli bo`lgan bitlar soni.
int.to_bytes(length, byteorder, *, signed=False)-shu sonni taqdim etuvchi baytlar
qatorini qaytaradi.
classmethod int.from_bytes(bytes, byteorder, *, signed=False)-berilgan baytlar
qatoriga mos sonni qaytaradi.
Haqiqiy sonlar
Haqiqiy sonlar ham butun sonlar qo`llab quvvatlovchi operatsiyalarni qo`llab
quvvatlaydi. Haqiqiy sonlarni ishlatilishiga oddiy misol:
Haqiqiy sonlar ustida amal bajarishda foydalanish mumkin bo`lgan qo`shimcha
metodlar:
float.as_integer_ratio- shu haqiqiy son bilan juftlik munosabatida bo`lgan butun
son.
float.is_integer()- ko`rsatgich butun son bo`lish bo`lmasligini tekshiradi.
float.hex()-float ni hex ga (o`n oltilik sanoq sistemasiga) o`tkazadi.
classmethod float.fromhex(s)- o`n oltilik sanoq sistemasisdan floatga otkazadi.
Ya’ni float.hex() ni teskarisi.
Pythonda sonlar bilan ishlaydigan standart metodlardan tashqari bir qancha modullar
ham bor. Math moduli- murakkab matematik funksiyalarni taqdim etadi:
Random moduli tasodifiy sonlar generatorini tasodifiy tanlov funksiyasini amalga
oshiradi:
Kompleks son
Pythonda komleks sonlar ustida arifmetik amallarni butun va haqiqiy sonlar ustida
bajarilgani kabi oddiy bajarish mumkin yani matematika kursida komleks sonlar
ustida arifmetik amallar qanday bajarilsa xuddi shunga o`xshab bajariladi.
Maktab kursidagi informatika faninidan bizga ma’lumki, sonlar nafaqat o`nlik
sanoq sistemasida balki boshqa sanoq sistemalarida ham bo`lishi mumkin. Masalan:
kompyuter ikkilik sanoq sistemasidan foydalanadi ya’ni 19-soni ikkilik sanoq
sistemasida (kompyuterda) 10011 ko`rinishida ifodalanadi. Bundan tashqari
sonlarni bir sanoq sistemasidan ikkinchi sanoq sistemasiga o`tkazish kerak. Python
bu uchun bir qancha funksiyalarni taqdim etadi:
int([object],[sanoq sistemasi asosi])- butun sonni berilgan sanoq sistemasidan
o`nlik sanoq sistemasiga o`tkazadi.
bin(x)- butun sonni ikkilik sanoq sistemasiga o`tkazadi
hex(x)- butun sonni o`n oltilik sanoq sistemasiga o`tkazadi
oct(x)- butun sonni sakkizlik sanoq sistemasiga o`tkazadi.
sanoq sistemasi
Son
Sonlar Python dasturlash tilida 3 turda bo'ladi:
1. butun sonlar,
2. haqiqiy sonlar
3. kompleks sonlar
. Butun songa misol 2,5, …
. Haqiqiy sonlarga misol 3.23 va 52.3e-4.
. Kompleks sonlarga misol (-5+4i) va (2.3-4.6i)
Butun sonlar
Python interpretatorida yuqorida operator va ifodalar mavzusida ko`rib
chiqqan barcha operatorlarni oddiy matemetika kursida ishlatilganidek bajarilishini
ko`rdik. Ya’ni ko`paytirish, qo`shish, ayirish, bo’lish, darajaga ko`tarish va hokazo.
Endi esa butun sonlar ustida bajarish mumkin bo`lgan qo`shimcha metodlarni
ko`ramiz.
int.bit_length()- sonni oldidagi ishora va nollarni hisobga olmasdan uni ikkilik
sanoq sistemasida taqdim etish uchun kerakli bo`lgan bitlar soni.
int.to_bytes(length, byteorder, *, signed=False)-shu sonni taqdim etuvchi baytlar
qatorini qaytaradi.
classmethod int.from_bytes(bytes, byteorder, *, signed=False)-berilgan baytlar
qatoriga mos sonni qaytaradi.
Haqiqiy sonlar
Haqiqiy sonlar ham butun sonlar qo`llab quvvatlovchi operatsiyalarni qo`llab
quvvatlaydi. Haqiqiy sonlarni ishlatilishiga oddiy misol:
Haqiqiy sonlar ustida amal bajarishda foydalanish mumkin bo`lgan qo`shimcha
metodlar:
float.as_integer_ratio- shu haqiqiy son bilan juftlik munosabatida bo`lgan butun
son.
float.is_integer()- ko`rsatgich butun son bo`lish bo`lmasligini tekshiradi.
float.hex()-float ni hex ga (o`n oltilik sanoq sistemasiga) o`tkazadi.
classmethod float.fromhex(s)- o`n oltilik sanoq sistemasisdan floatga otkazadi.
Ya’ni float.hex() ni teskarisi.
Pythonda sonlar bilan ishlaydigan standart metodlardan tashqari bir qancha modullar
ham bor. Math moduli- murakkab matematik funksiyalarni taqdim etadi:
Random moduli tasodifiy sonlar generatorini tasodifiy tanlov funksiyasini amalga
oshiradi:
Kompleks son
Pythonda komleks sonlar ustida arifmetik amallarni butun va haqiqiy sonlar ustida
bajarilgani kabi oddiy bajarish mumkin yani matematika kursida komleks sonlar
ustida arifmetik amallar qanday bajarilsa xuddi shunga o`xshab bajariladi.
Sonlar bilan ishlash uchun quyidagi funksiyalar mavjud:
1. int([<Ob'ektт>[, <Sanoq sistemasi>]]) - ob'ekni butun songa o'giradi.
ikkinchi parametrga sanoq sitemasini berish mumkin. (agar ikkinchi parametr berilmasa unda s.s. 10)) Dasturi: a = int(7.5) #Butun son
b = int("71", 10) #o'nli s.s.
c = int("071", 8) #sakkizli s.s.
d = int("0xA", 16) #o'noltili s.s.
print ( a, " ", b, " ", c, " ", d )
#javoblar orasiga bo's to'plamni qo'shish
print ( a, b, c, d, sep="" )
#javoblarni orsidan bo'sh to'plamni
#olib taslash
print ( a, b, c, d, end=" " )
#javoblarni qo'shib yozish
print ( a, b, c, d )
1. int([<Ob'ektт>[, <Sanoq sistemasi>]]) - ob'ekni butun songa o'giradi.
ikkinchi parametrga sanoq sitemasini berish mumkin. (agar ikkinchi parametr berilmasa unda s.s. 10)) Dasturi: a = int(7.5) #Butun son
b = int("71", 10) #o'nli s.s.
c = int("071", 8) #sakkizli s.s.
d = int("0xA", 16) #o'noltili s.s.
print ( a, " ", b, " ", c, " ", d )
#javoblar orasiga bo's to'plamni qo'shish
print ( a, b, c, d, sep="" )
#javoblarni orsidan bo'sh to'plamni
#olib taslash
print ( a, b, c, d, end=" " )
#javoblarni qo'shib yozish
print ( a, b, c, d )
2.long([<Ob'ekt>[, <Sanoq sistemasi>]]) — ob'ektni uzun butun songa o'giradi.
ikkinchi parametr sanoq sistemasi qiymati. Dasturi: a = long(7.5)
b = long("71", 10)
c = long("071", 8)
d = long("0xA", 16)
"""print ( a, " ", b, " ", c, " ", d )
print ( a, b, c, d, sep="" )
print ( a, b, c, d, end=" " ) """
print ( a, b, c, d )
ikkinchi parametr sanoq sistemasi qiymati. Dasturi: a = long(7.5)
b = long("71", 10)
c = long("071", 8)
d = long("0xA", 16)
"""print ( a, " ", b, " ", c, " ", d )
print ( a, b, c, d, sep="" )
print ( a, b, c, d, end=" " ) """
print ( a, b, c, d )
13 - Dars. Modul Math. Matematik funksiyalar.
Math va cmath modullarida haqiqiy va compleksli argumentlar uchun matematik funksiyalar to`plangan. Bu C tilida foydalaniladigan funksiyalar. Quyida math modulining funksiyalari keltirilgan. Qayerda z harfi bilan argumentga belgilash kiritilgan bo`lsa, u cmath modulidagi analogik funksiya ham shunday belgilanishini bildiradi.
Acos(z)-arkkosinus z.
Asin(z)- arksinus z.
Atan(z)- arktangens z.
Atan2(y, x)- atan(y/x).
Ceil(x)- x ga teng yoki katta eng kichik butun son.
Cos(z)- kosinus z.
Cosh(x)- giperbolik x kosinusi.
e- e konstantasi.
Exp(z)- eksponenta (bu degani e**z)
Fabs(x)-x absolute raqami.
Floor(x)- xga teng yoki kichik eng katta butun son
Fmod(x,y)- x ni y ga bo`lgandagi qoldiq qism.
Frexp(x)- mantisa va tartibni (m, i) juftligi kabi qaytaradi, m- o`zgaruvchan nuqtali
son, i esa- x=m*2**i ga teng butun son bo`ladi. Agarda 0-(0,0) qaytarsa boshqa
paytda 0.5<=abs(m)<1.0 bo`ladi.
Factorial(x)- x ning faktoriali. N!=1*2*3*…*n
Hypot(x,y)- sqrt(x*x+y*y)
Ldexp(m,i)- m*(2**i).
Log(z)- natural logarifm z.
Log10(z)- o`nlik logarifm z.
Log2(z)-logarifm ikki asosga ko`ra z.
Modf(x)- (y,q) juftlikda x ning butun va kasr qismini qaytaradi.
p-pi konstantasi.
Pow(x,y)- x**y.
Sin(z)- z ning sinusi.
Sinh(z)- z ning giperbolik sinusi.
Sqrt(z)- z ning kvadrat ildizi.
Tan(z)- z ning tangensi.
Tanh(z)- z ning giperbolik tangensi.
Trunc(x)- x haqiqiy sonning butun qismini qaytaradi.
degrees(x)-x ni radiandan gradusga o`tkazish.
radians(x)- x ni gradusdan radianga o`tkazish.
Math va cmath modullarida haqiqiy va compleksli argumentlar uchun matematik funksiyalar to`plangan. Bu C tilida foydalaniladigan funksiyalar. Quyida math modulining funksiyalari keltirilgan. Qayerda z harfi bilan argumentga belgilash kiritilgan bo`lsa, u cmath modulidagi analogik funksiya ham shunday belgilanishini bildiradi.
Acos(z)-arkkosinus z.
Asin(z)- arksinus z.
Atan(z)- arktangens z.
Atan2(y, x)- atan(y/x).
Ceil(x)- x ga teng yoki katta eng kichik butun son.
Cos(z)- kosinus z.
Cosh(x)- giperbolik x kosinusi.
e- e konstantasi.
Exp(z)- eksponenta (bu degani e**z)
Fabs(x)-x absolute raqami.
Floor(x)- xga teng yoki kichik eng katta butun son
Fmod(x,y)- x ni y ga bo`lgandagi qoldiq qism.
Frexp(x)- mantisa va tartibni (m, i) juftligi kabi qaytaradi, m- o`zgaruvchan nuqtali
son, i esa- x=m*2**i ga teng butun son bo`ladi. Agarda 0-(0,0) qaytarsa boshqa
paytda 0.5<=abs(m)<1.0 bo`ladi.
Factorial(x)- x ning faktoriali. N!=1*2*3*…*n
Hypot(x,y)- sqrt(x*x+y*y)
Ldexp(m,i)- m*(2**i).
Log(z)- natural logarifm z.
Log10(z)- o`nlik logarifm z.
Log2(z)-logarifm ikki asosga ko`ra z.
Modf(x)- (y,q) juftlikda x ning butun va kasr qismini qaytaradi.
p-pi konstantasi.
Pow(x,y)- x**y.
Sin(z)- z ning sinusi.
Sinh(z)- z ning giperbolik sinusi.
Sqrt(z)- z ning kvadrat ildizi.
Tan(z)- z ning tangensi.
Tanh(z)- z ning giperbolik tangensi.
Trunc(x)- x haqiqiy sonning butun qismini qaytaradi.
degrees(x)-x ni radiandan gradusga o`tkazish.
radians(x)- x ni gradusdan radianga o`tkazish.
Графика_Python.pptx
1.1 MB
PYTHON - GRAFIKA. Power Pointda grafika
Media is too big
VIEW IN TELEGRAM
PYTHONDA DASTURLASH. Grafika haqida video
14 - Dars. Satrlarni formatlash
Satrlarni qo’shishda (satr1+sate2) o’rniga formatlashni ishlating. Formatlash quyidagi sintaksisga ega:
<Maxsus formatdagi satr> % <qiymati>
<Maxsus formatdagi satr> ichda maxsus spisifikator bor.
%[(<Kalit)][<Bayroq>][<Eni>][<Aniqlik>]<O’girish turi >
<Maxsus satr formati> % <Qiymat>
Masalan:
>>> "%s" % 10 # bir element
'10'
>>> "%s - %s - %s" % (10, 20, 30) # birnecha elementlar
'10 - 20 - 30'
Ikkinch parameter quyidagi parametrga ega:
<Kalit> - lo’g’at kaliti. Masalan:
>>> "%(name)s - %(year)s" % {"year": 1978, "name": "Nik"}
'Nik - 1978'
<bayroq> - bu o’girish. Ogirish uchun quyidagi qiymatlar qo’llaniladi.
# - sakkizli uchun “o” , o’noltili uchun “0x” ishlatiladi. Haqiqiy sonlar uchun hamma vaqt nuqta “.” Ishlatiladi.
Masalan:
>>> print "%#o %#o %#o" % (077, 10, 10.5)
077 012 012
>>> print "%#x %#x %#x" % (0xff, 10, 10.5)
0xff 0xa 0xa
>>> print "%#X %#X %#X" % (0xff, 10, 10.5)
0XFF 0XA 0XA
>>> print "%#.0F %.0F" % (300, 300)
300. 300
0 – sonlar oldidan nullar qo’yish.
>>> "'%d' - '%05d'" % (3, 3) # 5 — maydon eni
"'3' - '00003'"
<Eni > — minimal maydon eni.
>>> "'%10d' - '%-10d'" % (3, 3)
"' 3' - '3 '"
>>> "'%3s''%10s'" % ("string", "string")
"'string'' string'
<Aniqlik> - nuqtadan keying son.
Masalan:
>>> import math
>>> "%s %f %.2f" % (math.pi, math.pi, math.pi)
'3.14159265359 3.141593 3.14'
yoki
>>> "'%*.*f'" % (8, 5, math.pi)
"' 3.14159'"
<o’girish tipi> - o’girish turi beriladi.
s - istalgan ob’ekt. Satr “str()” ham bo’ishi mumkin.
>>> print "%s" % ("Обычная строка")
Oddiy satr
>>> print "%s %s %s" % (10, 10.52, [1, 2, 3])
10 10.52 [1, 2, 3]
r – istalgan ob’ektni satrga aylantiradi “(repr() funksiyasi orqali”.
>>> print "%r" % ("Обычная строка")
'\xce\xe1\xfb\xf7\xed\xe0\xff \xf1\xf2\xf0\xee\xea\xe0'
c – yakka belgini satrga aylantiradi.
>>> for i in xrange(33, 127): print "%s => %c" % (i, i)
d va I - sonning butu qismini qaytaradi:
>>> print "%d %d %d" % (10, 25.6, -80)
10 25 -80
>>> print "%i %i %i" % (10, 25.6, -80)
10 25 -80
o – sakkizlikni qaytaradi:
>>> print "%o %o %o" % (077, 10, 10.5)
77 12 12
>>> print "%#o %#o %#o" % (077, 10, 10.5)
077 012 012
X – onoltik sanoq sistemasin aytaradi:
>>> print "%x %x %x" % (0xff, 10, 10.5)
ff a a
>>> print "%#x %#x %#x" % (0xff, 10, 10.5)
0xff 0xa 0xa Строки 73
X — onoltilini kata harfda qaytaradi:
>>> print "%X %X %X" % (0xff, 10, 10.5)
FF A A
>>> print "%#X %#X %#X" % (0xff, 10, 10.5)
0XFF 0XA 0XA
f va F - haqiqiy sonni qaytaradi:
>>> print "%f %f %f" % (300, 18.65781452, -12.5)
300.000000 18.657815 -12.500000
>>> print "%F %F %F" % (300, 18.65781452, -12.5)
300.000000 18.657815 -12.500000
>>> print "%#.0F %.0F" % (300, 300)
300. 300
e – eksponal sionni qaytaradi:
>>> print "%e %e" % (3000, 18657.81452)
3.000000e+03 1.865781e+04
>>> print "%E %E" % (3000, 18657.81452)
3.000000E+03 1.865781E+04
Метод format()
Misol:
>>> "{0} - {1} - {2}".format(10, 12.3, "string") # indekslar
'10 - 12.3 - string'
>>> arr = [10, 12.3, "string"]
>>> "{0} - {1} - {2}".format(*arr) # indekslar
'10 - 12.3 - string'
>>> "{color} - {model}".format(color="red", model="BMW") # kalitlar
'red - BMW'
>>> d = {"color": "red", "model": "BMW"}
>>> "{color} - {model}".format(**d) # kalit
'red - BMW'
>>> "{color} - {0}".format(2010, color="red") # kombinatsiya
'red - 2010'
>>> arr = [10, [12.3, "string"] ]
>>> "{0[0]} - {0[1][0]} - {0[1][1]}".format(arr) # indekslar
'10 - 12.3 - string' Глава 6 78
>>> "{arr[0]} - {arr[1][1]}".format(arr=arr) # indekslar
'10 - string'
>>> class Car: color, model = "red", "BMW"
>>> car = Car()
>>> "{0.color} - {0.model}".format(car) # atributlar
'red - BMW'
>>> print "{0!s}".format("строка") # str()
строка
>>> print "{0!r}".format("строка") # repr()
'\xf1\xf2\xf0\xee\xea\xe0'
Satrlarni qo’shishda (satr1+sate2) o’rniga formatlashni ishlating. Formatlash quyidagi sintaksisga ega:
<Maxsus formatdagi satr> % <qiymati>
<Maxsus formatdagi satr> ichda maxsus spisifikator bor.
%[(<Kalit)][<Bayroq>][<Eni>][<Aniqlik>]<O’girish turi >
<Maxsus satr formati> % <Qiymat>
Masalan:
>>> "%s" % 10 # bir element
'10'
>>> "%s - %s - %s" % (10, 20, 30) # birnecha elementlar
'10 - 20 - 30'
Ikkinch parameter quyidagi parametrga ega:
<Kalit> - lo’g’at kaliti. Masalan:
>>> "%(name)s - %(year)s" % {"year": 1978, "name": "Nik"}
'Nik - 1978'
<bayroq> - bu o’girish. Ogirish uchun quyidagi qiymatlar qo’llaniladi.
# - sakkizli uchun “o” , o’noltili uchun “0x” ishlatiladi. Haqiqiy sonlar uchun hamma vaqt nuqta “.” Ishlatiladi.
Masalan:
>>> print "%#o %#o %#o" % (077, 10, 10.5)
077 012 012
>>> print "%#x %#x %#x" % (0xff, 10, 10.5)
0xff 0xa 0xa
>>> print "%#X %#X %#X" % (0xff, 10, 10.5)
0XFF 0XA 0XA
>>> print "%#.0F %.0F" % (300, 300)
300. 300
0 – sonlar oldidan nullar qo’yish.
>>> "'%d' - '%05d'" % (3, 3) # 5 — maydon eni
"'3' - '00003'"
<Eni > — minimal maydon eni.
>>> "'%10d' - '%-10d'" % (3, 3)
"' 3' - '3 '"
>>> "'%3s''%10s'" % ("string", "string")
"'string'' string'
<Aniqlik> - nuqtadan keying son.
Masalan:
>>> import math
>>> "%s %f %.2f" % (math.pi, math.pi, math.pi)
'3.14159265359 3.141593 3.14'
yoki
>>> "'%*.*f'" % (8, 5, math.pi)
"' 3.14159'"
<o’girish tipi> - o’girish turi beriladi.
s - istalgan ob’ekt. Satr “str()” ham bo’ishi mumkin.
>>> print "%s" % ("Обычная строка")
Oddiy satr
>>> print "%s %s %s" % (10, 10.52, [1, 2, 3])
10 10.52 [1, 2, 3]
r – istalgan ob’ektni satrga aylantiradi “(repr() funksiyasi orqali”.
>>> print "%r" % ("Обычная строка")
'\xce\xe1\xfb\xf7\xed\xe0\xff \xf1\xf2\xf0\xee\xea\xe0'
c – yakka belgini satrga aylantiradi.
>>> for i in xrange(33, 127): print "%s => %c" % (i, i)
d va I - sonning butu qismini qaytaradi:
>>> print "%d %d %d" % (10, 25.6, -80)
10 25 -80
>>> print "%i %i %i" % (10, 25.6, -80)
10 25 -80
o – sakkizlikni qaytaradi:
>>> print "%o %o %o" % (077, 10, 10.5)
77 12 12
>>> print "%#o %#o %#o" % (077, 10, 10.5)
077 012 012
X – onoltik sanoq sistemasin aytaradi:
>>> print "%x %x %x" % (0xff, 10, 10.5)
ff a a
>>> print "%#x %#x %#x" % (0xff, 10, 10.5)
0xff 0xa 0xa Строки 73
X — onoltilini kata harfda qaytaradi:
>>> print "%X %X %X" % (0xff, 10, 10.5)
FF A A
>>> print "%#X %#X %#X" % (0xff, 10, 10.5)
0XFF 0XA 0XA
f va F - haqiqiy sonni qaytaradi:
>>> print "%f %f %f" % (300, 18.65781452, -12.5)
300.000000 18.657815 -12.500000
>>> print "%F %F %F" % (300, 18.65781452, -12.5)
300.000000 18.657815 -12.500000
>>> print "%#.0F %.0F" % (300, 300)
300. 300
e – eksponal sionni qaytaradi:
>>> print "%e %e" % (3000, 18657.81452)
3.000000e+03 1.865781e+04
>>> print "%E %E" % (3000, 18657.81452)
3.000000E+03 1.865781E+04
Метод format()
Misol:
>>> "{0} - {1} - {2}".format(10, 12.3, "string") # indekslar
'10 - 12.3 - string'
>>> arr = [10, 12.3, "string"]
>>> "{0} - {1} - {2}".format(*arr) # indekslar
'10 - 12.3 - string'
>>> "{color} - {model}".format(color="red", model="BMW") # kalitlar
'red - BMW'
>>> d = {"color": "red", "model": "BMW"}
>>> "{color} - {model}".format(**d) # kalit
'red - BMW'
>>> "{color} - {0}".format(2010, color="red") # kombinatsiya
'red - 2010'
>>> arr = [10, [12.3, "string"] ]
>>> "{0[0]} - {0[1][0]} - {0[1][1]}".format(arr) # indekslar
'10 - 12.3 - string' Глава 6 78
>>> "{arr[0]} - {arr[1][1]}".format(arr=arr) # indekslar
'10 - string'
>>> class Car: color, model = "red", "BMW"
>>> car = Car()
>>> "{0.color} - {0.model}".format(car) # atributlar
'red - BMW'
>>> print "{0!s}".format("строка") # str()
строка
>>> print "{0!r}".format("строка") # repr()
'\xf1\xf2\xf0\xee\xea\xe0'
Format parametrlari quyidagi ko’rinishga ega:
[<Tekislash>][<Belgi>][#][0][<Eni>][.<Aniqlik>][<O’girish>]
>>> "'{0:10}' '{1:3}'".format(3, "string")
"' 3' 'string'"
>>> "'{0:{1}}'".format(3, 10) # 10 - это ширина поля
"' 3'"
< — chap tomonga;
> — o’ng tamonga;
^ — O’rtaga. Misol:
>>> "'{0:<10}' '{1:>10}' '{2:^10}'".format(3, 3, 3)
"'3 ' ' 3' ' 3 '"
= — cap tamonga tekslaydi:
>>> "'{0:=10}' '{1:=10}'".format(-3, 3)
"'- 3' ' 3'"
>>> "'{0:=010}' '{1:=010}'".format(-3, 3)
"'-000000003' '0000000003'"
>>> "'{0:+}' '{1:+}' '{0:-}' '{1:-}'".format(3, -3)
"'+3' '-3' '3' '-3'"
>>> "'{0: }' '{1: }'".format(3, -3) # Пробел
"' 3' '-3'"
b — ikkilikda:
>>> "'{0:b}' '{0:#b}'".format(3)
"'11' '0b11'"
c — butun songa o’giradi:
>>> "'{0:c}'".format(100)
"'d'"
d — o’nlikda;
n — o’nlikda;
o — sakkizlikda:
>>> "'{0:d}' '{0:o}' '{0:#o}'".format(511)
"'511' '777' '0o777'"
x — o’noltilikda:
>>> "'{0:x}' '{0:#x}'".format(255)
"'ff' '0xff'"
X — o’noltilikda faqat kata harflarda:
>>> "'{0:X}' '{0:#X}'".format(255)
"'FF' '0XFF'"
f va F — float ni int ga:
>>> "'{0:f}' '{1:f}' '{2:f}'".format(30, 18.6578145, -2.5)
"'30.000000' '18.657815' '-2.500000'"
Aniqlikni belgilaydi:
>>> "'{0:.7f}' '{1:.2f}'".format(18.6578145, -2.5)
"'18.6578145' '-2.50'" 80
e —eksponansialda:
>>> "'{0:e}' '{1:e}'".format(3000, 18657.81452)
"'3.000000e+03' '1.865781e+04'"
>>> "'{0:E}' '{1:E}'".format(3000, 18657.81452)
"'3.000000E+03' '1.865781E+04'"
% 100 ko’paytirib oxiriga % belgisini qo’shadif. Masalan:
>>> "'{0:%}' '{1:.4%}'".format(0.086578, 0.000086578)
"'8.657800%' '0.0087%'"
[<Tekislash>][<Belgi>][#][0][<Eni>][.<Aniqlik>][<O’girish>]
>>> "'{0:10}' '{1:3}'".format(3, "string")
"' 3' 'string'"
>>> "'{0:{1}}'".format(3, 10) # 10 - это ширина поля
"' 3'"
< — chap tomonga;
> — o’ng tamonga;
^ — O’rtaga. Misol:
>>> "'{0:<10}' '{1:>10}' '{2:^10}'".format(3, 3, 3)
"'3 ' ' 3' ' 3 '"
= — cap tamonga tekslaydi:
>>> "'{0:=10}' '{1:=10}'".format(-3, 3)
"'- 3' ' 3'"
>>> "'{0:=010}' '{1:=010}'".format(-3, 3)
"'-000000003' '0000000003'"
>>> "'{0:+}' '{1:+}' '{0:-}' '{1:-}'".format(3, -3)
"'+3' '-3' '3' '-3'"
>>> "'{0: }' '{1: }'".format(3, -3) # Пробел
"' 3' '-3'"
b — ikkilikda:
>>> "'{0:b}' '{0:#b}'".format(3)
"'11' '0b11'"
c — butun songa o’giradi:
>>> "'{0:c}'".format(100)
"'d'"
d — o’nlikda;
n — o’nlikda;
o — sakkizlikda:
>>> "'{0:d}' '{0:o}' '{0:#o}'".format(511)
"'511' '777' '0o777'"
x — o’noltilikda:
>>> "'{0:x}' '{0:#x}'".format(255)
"'ff' '0xff'"
X — o’noltilikda faqat kata harflarda:
>>> "'{0:X}' '{0:#X}'".format(255)
"'FF' '0XFF'"
f va F — float ni int ga:
>>> "'{0:f}' '{1:f}' '{2:f}'".format(30, 18.6578145, -2.5)
"'30.000000' '18.657815' '-2.500000'"
Aniqlikni belgilaydi:
>>> "'{0:.7f}' '{1:.2f}'".format(18.6578145, -2.5)
"'18.6578145' '-2.50'" 80
e —eksponansialda:
>>> "'{0:e}' '{1:e}'".format(3000, 18657.81452)
"'3.000000e+03' '1.865781e+04'"
>>> "'{0:E}' '{1:E}'".format(3000, 18657.81452)
"'3.000000E+03' '1.865781E+04'"
% 100 ko’paytirib oxiriga % belgisini qo’shadif. Masalan:
>>> "'{0:%}' '{1:.4%}'".format(0.086578, 0.000086578)
"'8.657800%' '0.0087%'"