Nümunə:
for i in [1,2,3,4]:
print (i)
Sayğac, yaxud dövrün parametri xidməti dəyişəndir və o, dövrün yerinə yetirilməsi zamanı avtomatik dəyişilir. Python dilində for dövrünün parametri verilmiş ardıcıllıqda bütün qiymətləri alır.
Tutaq ki, ilk yüz natural ədədin cəmini tapmaq lazımdır. Bunun üçün proqram fraqmentini aşağıdakı kimi yazmaq olar:
s = 0
for i in range(1, 101):
s = s + i
print(s)
Bu fraqmentdə dövrün parametri olan i dəyişəninin alacağı qiymətlər range funksiyası vasitəsilə təyin olunur. Bu funksiya tam ədədlərdən ibarət ardıcıllıq yaradır. Mötərizədə göstərilmiş son qiymət həmin ardıcıllığa daxil olmur. Nümunədə bu funksiya 1-dən 100-dək ədədlər ardıcıllığını yaradır.
range() funksiyası dilimizə aralıq kimi tərcümə olunur.Ala bildiyi argumentlər string və integer cinsləridir. range() funksiyası vasitəsilə(for operatoru ilə) ədədləri ekrana tökə bilərsiniz.
>>> for i in range(8):
print (i)
0
1
2
3
4
5
6
7
>>>
Görüldüyü kimi 0-dan 8-ə qədər olan ədədləri ekrana tökdü. Əgər aralıq olaraq ifadələri bildirsək
>>> for i in range(0,8):
print (i)
Ilk ifadə ilə sonuncu ifadəmiz eyni metodla ekrana ədədləri çap etdi.Yəni range(8) və range(0,8) ifadələri eynilik təşkil edir.
range() funksiyasından istifadə edərək bir proqram yazaq.
passw=input('please write you passw:')
for i in passw:
if len(passw) in range(0,8):
print('Ok,you passw {}'.format(passw))
else: print('you passw {} very long'.format(passw))
Yuxarıdakı kodlarımızda len() funksiyasından istifadə edərək parolmuzun uzunluğunu range(0,8) aralığından çox olmamaq şərtilə istifadəçidən aldıq.Amma ekran çapında bir natamamlıq var.Çünki ekrana bir neçə dəfə Ok,you passw armadia ifadəsini çap etdi.Bunun qarşısını almaq üçün python bizə break operatorunu təklif edir.
break operatorun əlavə edərək kodlarımıza biraz görünüş əlavə edək.
Və ekran çapından gördüyümüz kimi ifadə yalnız bir dəfə çap olur. range() funksiyası daxilində üç argument də ala bilir.
>>> for i in range (0, 10, 3):
0
3
3
9
>>>
range(0,10,3) ifadə,0 və 10 arlığındakı rəqəmlərə 0 daxil olmaqla üzərinə 3 gələrək çap et. Geriyə sıralamada isə mənfi işarəsindən istifadə edəcəyik
>>> for i in range (8, 0, -1):
print (i)
8
7
6
5
4
3
2
1
>>>
ekran çapından göründüyü kimi for operatoru ilə istənilən ifadələr y-oxu üzrə çap olunur.Digər metodlardan istifadə edərək range funksiyasının aldığı argumentləri çap edək.
>>> print(range(0,10))
range (0, 10)
>>> print(range(6))
range(0, 6)
kodlarda göründüyü kimi ifadələr,range() funksiyasının daxilində argumentləri necə yazılıbsa eləcədə çap olunur.
>>> print(*range(6))
1 2 3 4 5
>>>
Yuxarıdakı metodumuzda isə hasil işarəsi yazaraq 6-ya qədər olan sayları ekranda göstərə bildik. İndidə gəlin sep metodundan istifadə edərək bunu gerçəkləşdirək
>>> print(*range(8), sep=’.’)
0.1.2.3.4.5.6.7
>>>
sep metodu vasitəsilə saylarımızın arasına nöqtə işarəsini əlavə edə bildik.
>>> print(*range(8), end=’./’)
0.1.2.3.4.5.6.7./
>>> print(*range(8), sep=’\t’)
0 1 2 3 4 5 6 7
>>>
Dostları ilə paylaş: