LINUX

آموزش لینوکس

LINUX

آموزش لینوکس

LINUX

این وبلاگ به بحث پیرامون لینوکس و امنیت و زبان برنامه نویسی تحت لینوکس می پردازد.

طبقه بندی موضوعی

حلقه های for و تو در تو در پایتون

جمعه, ۳۰ خرداد ۱۳۹۳، ۰۱:۴۳ ب.ظ

حلقه های for در پایتون این قابلیت رو دارن که بتونن یک جمله یا لیست یا رشته و یا هرچیز دیگه ای رو به صورت متوالی انجام بدن یا خروجی اون رو چاپ کنن.


قاعده

قاعده استفاده از حلقه های for در پایتون به صورت زیر است:

for iterating_var in sequence:
   statements(s)


مقدار یا عبارتی که بعنوان iterating_var مشخص می شود تا هنگامی که sequence ادامه داشته باشد بررسی میشود.


شمای کلی


به مثال زیر توجه کنید:

#!/usr/bin/python
for letter in 'Python':     # First Example
   print 'Current Letter :', letter
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        # Second Example
   print 'Current fruit :', fruit
print "Good bye!"


بعد از به اجرا در آوردن کد خروجی مشابه زیر دریافت خواهید کرد:

Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n
Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!


تکرار در اندیس ها

گاهی اوقات تکرار بو سیله و به تعداد اندیس های مثلا موجود در یک لیست اتفاق می افته که بعنوان مثال میتونید به اسکریپت زیر نگاه کنید:

#!/usr/bin/python
fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print 'Current fruit :', fruits[index]
print "Good bye!"


وقتی اسکریپت بالا رو اجرا کنید خروجی مشابه زیر دریافت میکنید:

Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!


در این بخش من از یک تابع built-in به اسم ()len برای گفتن طول لیست استفاده کردم و به حلقه for اعلام کردم به ازای تعداد اندیس ها که خروجی همون تابع هم هست مقادیر لیست رو به من نشون بده.


استفاده از else در حلقه ی for

شما میتونید از عبارت else در حلقه های for هم استفاده کنید. مثال زیر نمایش اعداد اول بین ۱۰ تا ۲۰ هست:

#!/usr/bin/python
for num in range(10,20):  #to iterate between 10 to 20
   for i in range(2,num): #to iterate on the factors of the number
      if num%i == 0:      #to determine the first factor
         j=num/i          #to calculate the second factor
         print '%d equals %d * %d' % (num,i,j)
         break #to move to the next number, the #first FOR
   else:                  # else part of the loop
      print num, 'is a prime number'


بعد از اجرای این کد خروجی زیر رو دریافت خواهید کرد:

10 equals 2 * 5
11 is a prime number
12 equals 2 * 6
13 is a prime number
14 equals 2 * 7
15 equals 3 * 5
16 equals 2 * 8
17 is a prime number
18 equals 2 * 9
19 is a prime number


حلقه های تو در تو

قاعده کلی استفاده از این حلقه ها به صورت زیر است:

حلقه های تو در تو برای for

for iterating_var in sequence:
   for iterating_var in sequence:
      statements(s)
   statements(s)


حلقه های تو در تو برای while

while expression:
   while expression:
      statement(s)
   statement(s)


برای مثال اعداد اول از ۱ تا ۱۰۰ رو میتونیم به صورت زیر بنویسیم:

#!/usr/bin/python
i = 2
while(i < 100):
   j = 2
   while(j <= (i/j)):
      if not(i%j): break
      j = j + 1
   if (j > i/j) : print i, " is prime"
   i = i + 1
print "Good bye!"


و همچنین خروجی مثل زیر رو دریافت خواهید کرد:

2 is prime
3 is prime
5 is prime
7 is prime
11 is prime
13 is prime
17 is prime
19 is prime
23 is prime
29 is prime
31 is prime
37 is prime
41 is prime
43 is prime
47 is prime
53 is prime
59 is prime
61 is prime
67 is prime
71 is prime
73 is prime
79 is prime
83 is prime
89 is prime
97 is prime
Good bye!

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی