جزئیات گروه خصوصی

administrators

فهرست اعضا

  • RE: مشکل در نصب پایتون 3

    سلام
    به نظر می رسه که یک سری پکیج ها و برنامه ها روی سیستم عامل تون نصب نیست.
    روی لینک update your machine که تو عکس هست کلیک کنید راهنمایی بیشتری می کنه.
    اما این کار رو هم انجام بدید و بعد دوباره تست کنید:
    ویندوز رو یک بار آپدیت کنید و دستگاه رو ری استارت کنید
    احتمالا یک سری برنامه ها مثل Microsoft Visual C++ 2015 یا 2017 روی سیستم تون نصب نیست و برای همین نصب نمیشه

    موفق باشید

    پست شده در پرسش و پاسخ
  • RE: پردازش تصویر

    با سلام
    برای این کار لطفا کد هایی که پیش رفتید رو این جا به اشتراک بگذارید تا با توجه به اون بررسی بشه.

    پست شده در پرسش و پاسخ
  • RE: جستجوی اعداد اول

    سلام

    بله منتقل کردم به فروم پایتون ۳.

    در مورد کد شما هم می تونید از این روش استفاده کنید که تابع isprime از ماژول sympy رو ایمپورت کنید و بعد به این ترتیب پیش برید:

    from sympy import isprime
    n1 = int(input('number1: '))
    n2 = int(input('number2: '))
    if isprime(n1) and isprime(n2):
        print('both are prime :)')
    elif isprime(n1):
        print(f'{n1} is prime')
    elif isprime(n2):
        print(f'{n2} is prime')
    else:
        print('none of them are prime')
    

    که این تابع خودش میاد حساب می کنه که عدد اول هست یا خیر.
    تو مطلب آموزش بررسی اول بودن عدد در پایتون با تابع isprime ماژول sympy تنها در 3 خط! هم توضیحات مختصری در مورد این تابع دادم که اگر مایل بودید می تونید مطالعه کنید.

    پست شده در پرسش و پاسخ
  • RE: جستجوی اعداد اول

    با سلام

    کدی که نوشتید رو این جا لطفا ارسال کنید تا کد تون بررسی بشه.
    هم چنین کد تون در در پایتون نسخه ۲ دارید می نویسید یا نسخه ۳؟ چون در تالار پایتون نسخه ۲ نوشتید عرض کردم.

    پست شده در پرسش و پاسخ
  • RE: چطور در پایتون اینترنت کانکشنم رو کانکت و دیسکانکت کنم؟

    سلام

    بسته به این که سیستم عامل تون چه هست دستوری که در لیست قرار می گیره متفاوت هست که با توجه به اون باید اقدام کنید.
    کد به این صورت هست به صورت کلی:

    import subprocess
    result = subprocess.run(['sudo', 'systemctl', 'restart', 'network'])
    if result.returncode:
        print('Restarting Network Failed... Try again')
    else:
        print('Successful')
    
    پست شده در پرسش و پاسخ
  • RE: چطور در پایتون اینترنت کانکشنم رو کانکت و دیسکانکت کنم؟

    سلام
    کد تون رو که نوشتید رو این جا ارسال کنید و جا هایی که تلاش کردید رو هم کد رو بنویسید تا ببینیم به چه روشی پیش رفتید

    پست شده در پرسش و پاسخ
  • RE: چطور در پایتون اینترنت کانکشنم رو کانکت و دیسکانکت کنم؟

    سلام
    محض اطمینان بفرمایید که از کدوم نسخه پایتون و از چه ماژول هایی در برنامه تون استفاده می‌کنید.

    پست شده در پرسش و پاسخ
  • جمع پیوسته دو عدد در پایتون

    سلام
    در این مطلب قصد داریم تا به شما جمع پیوسته دو عدد در پایتون را آموزش دهیم که چطور از کاربر ورودی بگیریم و اعداد را پیوسته با هم جمع کنیم.
    با ما همراه باشید.

    خب، چیزی که در نهایت می‌خواهیم به آن برسیم این هست:

    از کاربر ورودی دو عدد می‌گیریم. عدد اول را با عدد دوم جمع می‌کنیم و یک عدد سومی داریم. حالا دوباره یک عدد جدید از کاربر می‌گیریم و عدد جدید را با عدد سوم که گفتیم جمع می‌بندیم و همین‌طور تا آخر ادامه دارد.

    مثلا اول کاربر عدد 1 را وارد می‌کند و بعدش 2. خب جمعش می‌شود 3. حالا عدد جدید از کاربر می‌گیریم و مثلا 3 وارد می‌کند و حاصل جدید می‌شود 6 و همین‌طور تا آخر.

    برای این کار هم می‌توانیم از تابع نویسی استفاده کنیم و یا هم تابعی برای آن ننویسیم، اما ما در این پروژه از تابع استفاده کردیم.

    خب، ابتدا یک تابع به اسم دلخواه تعریف می‌کنیم.

    def my_func():
    

    به خاطر این‌که هر تابع یک تکه کد محسوب می‌شود باید دو نقطه در انتهای خط قرار دهیم تا پایتون متوجه شود که قرار هست بلوک کد بنویسیم که اجرایش کند.

    خب، بعدش از بلوک try except استفاده می‌کنیم. این که این بلوک چیست و چه کار می‌کند را صرفا خلاصه‌وار می‌نویسم و در مطالب بعدی کامل توضیح می‌دهم:

    بلوک try except بلوکی هست که به ما اجازه می‌دهد تا یک قطعه کد را تست کنیم و اگر به خطا خورد برایش خطا تعریف می‌کنیم که در صورتی که فلان خطا دریافت شد فلان کار انجام شود.

    خب، پایین‌تر باز توضیح می‌دهم که این بلوک چیست و چرا از آن استفاده کردیم.

    سینتکسش هم به این صورت است:

    try:
        my_code
    except given_error:
        do_something
    

    حالا کد مان به این صورت می‌شود:

    def my_func():
        try:
    

    خب، تا این جا دو تا بلوک کد داریم. یکی تابع تعریف کردیم که قرار هست داخل تابع یک سری کد بنویسیم و یکی دیگر هم try استفاده کردیم که قرار هست داخل این بلوک هم یک سری کد بنویسیم.

    بعدش ما به دلخواه از تابع print() استفاده کردیم که شروع برنامه را با کلمات دلخواه نشان دهیم.

    شما اسم تابع و کلماتی که در این آموزش می‌نویسیم را می‌توانید به دلخواه تغییر دهید.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than than than numbers, it'
                  ' would break the system\n')
    

    همان‌طور که می‌بینید ما تابع پرینت را در سه خط نوشتیم، اما چرا؟ طبق PEP8 و دستورالعمل پایتون، بهتر است هر خط نهایتا ۷۹ کاراکتر را شامل شود که ما هم همین کار را کردیم و ادامه کد را در خط بعدی نوشتیم.

    و حالا نوبت به این می‌رسد که در کاربر ورودی عددی دریافت کنیم. برای این‌که مطمئن شویم عددی که کاربر وارد می‌کند حتما از نوع integer باشد و string نباشد از تابع int() هم استفاده می‌کنیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than than than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
    

    حالا بعد از این که از کاربر ورودی گرفتیم می‌رویم سراغ حلقه while که کار بعدی را شروع کنیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than than than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
            while True:
    

    اما چرا حلقه while را True قرار دادیم؟

    عبارت while True یعنی تا زمانی که این حلقه مقدارش درست باشد کار کند. به عبارت ساده‌تر، یعنی یک حلقه با تکرار همیشگی.

    حالا کد را ادامه می‌دهیم.

    حالا یک عدد دیگر از کاربر می‌گیریم و در متغیر دیگری آن را ذخیره می‌کنیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
            while True:
                input4 = input1
                input2 = int(input('Type the other number... '))
    

    اما علت این‌که چرا متغیر دیگری به نام input4 تولید کردیم و مقدارش را برابر با input1 گذاشتیم پایین‌تر توضیح می‌دهم.

    خب، تا این‌جا از کاربر دو تا عدد ورودی گرفتیم. حالا کاری که باید کنیم این است که input1 را با input2 جمع ببندیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
            while True:
                input4 = input1
                input2 = int(input('Type the other number... '))
                input1 = input2 + input1
    

    و این کار را در متغیر input1 می‌ریزیم و آپدیتش می‌کنیم.

    حالا در دو خط بعدی یک بار عدد عدد قبلی و عدد فعلی را در یک آرایه می‌ریزیم و بعد هم جمع جدید را پرینت می‌کنیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
            while True:
                input4 = input1
                input2 = int(input('Type the other number... '))
                input1 = input2 + input1
                input3 = [input4, input2]
                print(input3)
                print('The sum is {}'.format(input1))
    

    خب، تا این‌جا کار ما با ورودی گرفتن از کاربر تمام شده و بلوک try هم به پایان رسید. حالا نوبت به except می‌رسد که چطور از آن استفاده کنیم.

    متغیرهای input1 و input2 را در تابع int() قرار دادیم تا هر مقدار عددی که دریافت کرد را به صورت عدد نشان دهد و استرینگ نباشد.

    اگر استرینگ باشد و کاربر عدد 3 را وارد کند در واقع مقدار متغیر ما می‌شود ‘3’، اما حالا که از تابع int() استفاده می‌کنیم مقدار استرینگ را به عدد تبدیل می‌کند.

    اما خب اگر کاربر اشتباها یک کاراکتر غیر عددی وارد کند برنامه به خطا می‌خورد. می‌توانیم از بلوک try except استفاده نکنیم تا هر خطا را به همان شکلی که در پایتون تعریف شده به کاربر نشان دهیم، اما می‌خواهیم error handling یا مدیریت خطا انجام دهیم.

    بگذارید یک بار برنامه را بدون try بنویسیم و خروجی آن را در صورتی که کاربر کاراکتر وارد کند ببینیم:

    def my_func():
        print('This is our magical sequence of numbers. Meanwhile, you can'
              ' type any other characters rather than numbers, it'
              ' would break the system\n')
        input1 = int(input('Type a number... '))
        while True:
            input4 = input1
            input2 = int(input('Type the other number... '))
            input1 = input2 + input1
            input3 = [input4, input2]
            print(input3)
            print('The sum is {}'.format(input1))
    
    
    my_func()
    

    خروجی:

    This is our magical sequence of numbers. Meanwhile, you can type any other characters rather than numbers, it would break the system
    Type a number… 1
    Type the other number… q
    Traceback (most recent call last):
    File “numbers.py”, line 15, in <module>
    my_func()
    File “numbers.py”, line 8, in my_func
    input2 = int(input('Type the other number… '))
    ValueError: invalid literal for int() with base 10: ‘q’

    لاین آخر و ارور ValueError را مشاهده کنید. خطا می‌گوید که کاراکتری به نام q مبنای ۱۰ ندارد و بنابراین کاراکتر q قابل تبدیل شدن به عدد نیست.

    ما با بلوک except در واقع می‌خواهیم این نوع ارورها را مدیریت کنیم.

    حالا کد را با try except می‌نویسیم.

    def my_func():
        try:
            print('This is our magical sequence of numbers. Meanwhile, you can'
                  ' type any other characters rather than numbers, it'
                  ' would break the system\n')
            input1 = int(input('Type a number... '))
            while True:
                input4 = input1
                input2 = int(input('Type the other number... '))
                input1 = input2 + input1
                input3 = [input4, input2]
                print(input3)
                print('The sum is {}'.format(input1))
        except ValueError:
            print('Bye')
    
    
    my_func()
    

    در واقع در بلوک except داریم به برنامه می‌گوییم که برو این کدهای ما را try کن و اگر به ارور ValueError برخورد کردی بیا Bye را پرینت کن. در آخر هم که تابع را صدا می‌زنیم تا برنامه اجرا شود.

    This is our magical sequence of numbers. Meanwhile, you can type any other characters rather than numbers, it would break the system
    Type a number… 1
    Type the other number… q
    Bye

    حالا بیایید برنامه را با ورودی‌های صحیح تست کنیم ببینیم چه نتایجی می‌گیریم:

    This is our magical sequence of numbers. Meanwhile, you can type any other characters rather than numbers, it would break the system
    Type a number… 1
    Type the other number… 3
    [1, 3]
    The sum is 4
    Type the other number… 5
    [4, 5]
    The sum is 9
    Type the other number… 7
    [9, 7]
    The sum is 16
    Type the other number… 9
    [16, 9]
    The sum is 25
    Type the other number… bye
    Bye

    منبع این آموزش سایت آموزش پایتون می باشد که این مطلب در مقاله جمع پیوسته دو عدد در پایتون منتشر شده و توسط انجمن پایتون فارسی بازنشر شده است.

    پست شده در آموزش
  • ایمپورت ماژول در پایتون چیست

    با سلام
    در این مطلب قصد داریم توضیح دهیم که ماژول در پایتون چیست و چطور می‌توانیم یک ماژول را به برنامه خود اضافه کنیم.
    با ما همراه باشید.

    در مطلب قبلی که قصد رفع مشکلی را داشتیم مجبور شدیم تا ماژول string را به برنامه خود اضافه کنیم تا بتوانیم از توابع و متدهای این ماژول استفاده کنیم. اما چه نیازی به ایمپورت و استفاده از دیگر ماژول‌ها داریم و چرا باید این کار را کنیم؟

    ابتدا خود ماژول و سیستم ایمپورت ماژول را توضیح می‌دهیم.

    داکیومنت پایتون البته بهتر از هر جای دیگری این سیستم را توضیح می‌دهد. لینک را می‌توانید چک کنید.

    Python code in one module gains access to the code in another module by the process of importing it

    همان‌طور که لاین اول داکیومنت پایتون هم توضیح می‌دهد، ایمپورت کردن یعنی دسترسی یافتن به ماژول دیگری.

    و string هم یک ماژول هست و یک برنامه که در آن یک سری تابع و متغیر تعریف شده که ما در مطلب قبلی این برنامه را به کد خود اضافه کردیم تا بتوانیم از آن استفاده کنیم.

    بگذارید یک مثال دیگری بزنیم. فرض کنید ما دو فایل داریم به نام‌های app1.py و app2.py.

    Python: app1.py
    var1 = ('Hello World')
    var2 = ('Hello There')
    var3 = ('Bye Then')
    

    در حالت عادی اگر app1.py را اجرا کنیم و متغیر var1 را پرینت بگیریم، مقدار Hello World به ما برمی‌گرداند. حالا می‌خواهیم app1.py را به app2.py اضافه کنیم و دیگر متغیری به نام var1 را دوباره در app2.py ننویسیم. برای این کار باید app1.py را به برنامه app2.py اضافه کنیم با import.

    کد app2.py به این صورت می‌شود:

    Python: app2.py
    import app1
    

    خب حالا تمامی کدهای app1 در app2 هم قابل استفاده هستند. برای این‌که هرکدام را اجرا کنیم و یا پرینت کنیم، به این صورت عمل می‌کنیم که ابتدا اسم ماژول را می‌نویسیم و بعد با . یا نقطه، متغیر یا شئ یا تابعی که می‌خواهیم صدا بزنیم را می‌نویسیم:

    Python: app2.py
    print (app1.var1)
    

    خروجی:

    Hello World

    یا هم مثلا:

    Python: app2.py
    print (app1.var3)
    

    خروجی:

    Bye Then

    منبع این آموزش سایت آموزش پایتون می باشد که این مطلب در مقاله ایمپورت ماژول در پایتون چیست منتشر شده و توسط انجمن پایتون فارسی بازنشر شده است.

    پست شده در آموزش
  • نحوه نوشتن نام کلاس در پایتون

    سلام
    در این مطلب قصد داریم تا نحوه پیشنهادی نوشتن نام کلاس در پایتون را به شما آموزش دهیم.

    در PEP8 پایتون پیشنهاد شده که نام اول حرف هر کلمه در کلاس در پایتون با حرف بزرگ نوشته شود و جداکننده هم نداشته باشند و کلمات را پشت سر هم بنویسید.
    مثلا:

    class ThisIsMyClass:
    

    منبع این آموزش سایت آموزش پایتون می باشد که این مطلب در مقاله نحوه نوشتن نام کلاس در پایتون منتشر شده و توسط انجمن پایتون فارسی بازنشر شده است.

    پست شده در آموزش