მარყუჟისთვის პითონში. სინტაქსი, სიის გამეორება, შესვენება, გაგრძელება და სხვა ფუნქციები

Цikl პითონისთვის ი ციკლი ხოლო – განცხადებები პროგრამული უზრუნველყოფა ენა, კერძოდ: გამეორების ოპერატორები, ნებაING კოდის გამეორება მოცემული ნომერი დრო.

Цikl For - сინტაქსისი

როგორც უკვე განვმარტეთ, გმოიცავს for პითონში არის იტერატორი, რომელიც დაფუძნებულიაй თითო ციკლიიდენტობის. არის ის აქტების ორმაგი ელემენტებით и სია, ლექსიკა გასაღებები და სხვა გამეორებადი ობიექტები.

პითონში ციკლი იწყება for საკვანძო სიტყვით, რასაც მოჰყვება თვითნებური ცვლადის სახელი, რომელიც ინახავს შემდეგი ობიექტის მნიშვნელობას მოცემულ თანმიმდევრობაში. ზოგადი სინტაქსი for…in-ისთვის პითონში ასე გამოიყურება:

ამისთვის : else:      

კომპონენტები "მიმდევრობა" ჩამოთვლილია ერთი მეორის მიყოლებით ციკლის ცვლადი. უფრო სწორად, ცვლადი მიუთითებს ასეთი ელემენტები. Ყველასთვის მათგან "მოქმედება" შესრულებულია.

მარტივი ციკლი პითონში კონკრეტული მაგალითით:

>>> ენები = ["C", "C++", "Perl", "Python"] >>> x-ისთვის ენებში: ... print(x) ... C C++ Perl Python >>>

სხვა ბლოკი განსაკუთრებულიაე. Თუ პროგრამისტიыსამუშაო с პერლი ნაცნობიაы მასთან, ეს მათთვის, ვინც ურთიერთობს с C და C++ - ეს არის ინოვაცია. სემანტიკურად ის ფუნქციები тიდენტურად ხოლო მარყუჟი.

შესრულებულია მხოლოდ მაშინ, როდესაც მარყუჟი არ არის „შეჩერებული“ შესვენების განაცხადით. ანუ ის სრულდება მხოლოდ მას შემდეგ, რაც ყველა ელემენტი გაივლის მითითებულ თანმიმდევრობას.

შესვენების ოპერატორი პითონში – შესვენება

თუ პროგრამას აქვს for loop აუცილებელია შეუშალოსla შესვენების განცხადება, he დაასრულებსის მიდისმდე პროგრამა ნაკადი იქნება კონტყოფნა გარეშე აქტივაციის სხვაგან.

Უფრო ხშირად დაარღვიე ფრაზები პითონშიuyutsya პირობითი განცხადებებით.

edibles = ["chops", "dumplings", "კვერცხი", "თხილი"] საკვები საჭმელში: if food == "dumplings": print("მე არ ვჭამ პელმენებს!") break print("შესანიშნავი, გემრიელი " + საჭმელი) else: print ("კარგია, რომ არ იყო პელმენი!") print ("ვახშამი დასრულდა.")

თუ ამ კოდს გაუშვით, მიიღებთ შემდეგ შედეგს:

დიდი, გემრიელი ღვეზელები. მე არ ვჭამ პელმენებს! ვახშამი დასრულდა.

ჩვენ ვხსნით "dumplings" მონაცემთა არსებული სიიდან და ვიღებთ:

შესანიშნავი, გემრიელი ღვეზელები შესანიშნავი, გემრიელი კვერცხები შესანიშნავი, გემრიელი თხილი. ვახშამი დასრულდა.

python skip ოპერატორი - გაგრძელება

ვთქვათ, მომხმარებლის ანტიპათია ასეთი პროდუქტების მიმართ არ არის იმდენად დიდი, რომ მთლიანად მიატოვოს მათი მოხმარება. შედეგად, მარყუჟი გრძელდება ოპერატორთან continue. შემდეგი სკრიპტი იყენებს განცხადებას continue, გააგრძელეთ სიის გამეორება „დუმპლინგის კონტაქტის“ შესახებ.

edibles = ["chops", "dumplings", "კვერცხი", "თხილი"] საკვები საჭმელში: if food == "dumplings": print("მე არ ვჭამ პელმენებს!") გაგრძელება ბეჭდვისთვის ("შესანიშნავი, გემრიელი " + საჭმელი) # ეს შეიძლება იყოს კოდი კერძების სიამოვნებისთვის :-) სხვა: ბეჭდვა ("მეზიზღება პელმენი!") ბეჭდვა ("ვახშამი დასრულდა.")

ქვედა ხაზი:

დიდი, გემრიელი ღვეზელები. მე არ ვჭამ პელმენებს! მშვენიერი, გემრიელი კვერცხები შესანიშნავი, გემრიელი თხილი მე მძულს პელმენი! ვახშამი დასრულდა.

სიების გამეორება range() ფუნქციით

თუ გსურთ სიის ინდექსებზე წვდომა, გაუგებარია, როგორ გამოიყენოთ for loop ამ მიზნით. შესაძლებელია ყველა ელემენტზე წვდომა, მაგრამ ელემენტის ინდექსი მიუწვდომელი დარჩება. თუმცა, არსებობს ელემენტის ინდექსზე და თავად ელემენტზე წვდომის მეთოდი. ამ მიზნით, ფუნქცია გამოიყენება range() სიგრძის ფუნქციასთან ერთად len():

ფიბონაჩი = [0,1,1,2,3,5,8,13,21] i-სთვის დიაპაზონში(len(fibonacci)): ბეჭდვა(i,fibonacci[i])

მიიღეთ:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13

ყურადღება! როდესაც გამოიყენება len() к list or tuple, მიღებულია მოცემული მიმდევრობის ელემენტების შესაბამისი რაოდენობა.

სიების გამეორების სირთულეები

სიის გამეორებისას რეკომენდებულია სიის დინამიკის თავიდან აცილება მარყუჟის სხეულში. სიცხადისთვის, ჩვენ შეგვიძლია შემოგთავაზოთ შემდეგი ვარიანტი:

ფერები = ["წითელი"] i ფერებში: if i == "წითელი": ფერები += ["შავი"] if i == "შავი": ფერები += ["თეთრი"] ბეჭდვა(ფერები)

რა ხდება განაცხადის დროს print(colours)?

['წითელი', 'შავი', 'თეთრი']

ამის თავიდან ასაცილებლად, რეკომენდებულია ასლთან ურთიერთქმედება ნაჭრების გამოყენებით, როგორც ქვემოთ მოცემულ მაგალითში:

ფერები = ["წითელი"] i ფერებში[:]: if i == "წითელი": ფერები += ["შავი"] if i == "შავი": ფერები += ["თეთრი"] ბეჭდვა(ფერები )

შედეგი:

['წითელი შავი']

სია შეიცვალა colours, მაგრამ ეს მოქმედება არ იმოქმედა ციკლზე. მონაცემები, რომლებიც საჭიროებდა გამეორებას, უცვლელი დარჩა მარყუჟის შესრულებისას.

ჩამოთვალეთ პითონ 3-ში

Enumerate არის ჩაშენებული პითონის ფუნქცია. დამწყებთათვის უმეტესობამ, ისევე როგორც ზოგიერთმა გამოცდილმა პროგრამისტმა, არ იცის მისი არსებობის შესახებ. ის საშუალებას გაძლევთ ავტომატურად დათვალოთ მარყუჟის გამეორებები. Მაგალითად:

მრიცხველისთვის, მნიშვნელობა innumerate(some_list): print(counter, value)

ფუნქცია enumerate ასევე იღებს არასავალდებულო არგუმენტს (წარმოშობის მნიშვნელობა, ნაგულისხმევად აღებული ამისთვის 0). რაც მას კიდევ უფრო ეფექტურს ხდის.

my_list = ['ვაშლი', 'ბანანი', 'ალუბალი', 'ატამი'] c-სთვის, მნიშვნელობა innumerate(my_list, 1): print(c, value) # შედეგი: # 1 ვაშლი # 2 ბანანი # 3 cherry # 4 ატამი

დატოვე პასუხი