میانبرهای پایچارم
مثلا فرض کنید میخوایم چک کنیم ی متغیر برابر None هست یا نیست
خیلی راحت اسم متغییر رو بنویسید و ی دات بعدش بزارید و if بنویسید پیشنهاد های پایچارم چیزای جذابیه که توی عکس یک میتونید ببینید
همچنین گزینه های دیگری هم هست ک میتونید تو عکس دوم ببینید
#pycharm
@raspberry_python
مثلا فرض کنید میخوایم چک کنیم ی متغیر برابر None هست یا نیست
خیلی راحت اسم متغییر رو بنویسید و ی دات بعدش بزارید و if بنویسید پیشنهاد های پایچارم چیزای جذابیه که توی عکس یک میتونید ببینید
همچنین گزینه های دیگری هم هست ک میتونید تو عکس دوم ببینید
#pycharm
@raspberry_python
کدوم عدد در پایتون غلطه ؟
Final Results
13%
0023.34200
5%
2.54643e-34
6%
0xabad
17%
12_32j
21%
3_3.24_3535_43533
7%
01020304
8%
0b1010101
23%
0o3345
تو دانشگاه MIT استاد سوال میپرسه و دو نفر جواب درست میدن، بعد استاد براشون فریزبی میندازه :))))))))
هعییی خداااا 😭😂🤦♂️
@raspberry_python
هعییی خداااا 😭😂🤦♂️
@raspberry_python
خروجی کد بالا چیست ؟
Anonymous Quiz
20%
[1, 3, 3, 5, 5, 7]
19%
[2, 2, 4, 4, 6, 6]
21%
syntax error
17%
index error
3%
key error
20%
چبدونم :(
🐍 Python & Raspberry 🐍
کدوم عدد در پایتون غلطه ؟
خب بریم که ی توضیحی درمورد این سوال داشته باشیم
اولا که اعداد دسیمال داخل پایتون، نمیتونن با صفر شروع بشن مگر انکه اعشاری باشن مث گزینه یک
مورد دوم عدد با نمایش
scientific
شناخته میشه و عددی ک بعد از e میاد توان ۱۰ رو نشون میده(چیز جدیدی نیست و تو ریاضیات زیاد دیده میشه این طرز بیان)
مورد سوم چون با
abcdef
هم استفاده کنیم
مورد ۴ام یک عدد مختلط رو نشون میده
j = sqrt(-1)
مورد ۵ام هم یک عدد معمولیه چیز خاصی نداره میتونید توی عددتون اندرلاین بزارید و مشکلی نداره فقط هواستون باشه نباید دوتا اندرلاین پشت سرهم بزارید
مورد ۷ام هم یک عدد باینری رو نشون میده که فقط باید صفر و یک باشه
مورد اخر هم یک عدد درمبنال ۸ رو نشون میده (اصطلاحا اعداد اوکتال هستن)
octal
و فقط ارقامش میتونه
۰۱۲۳۴۵۶۷
باشه
@raspberry_python
اولا که اعداد دسیمال داخل پایتون، نمیتونن با صفر شروع بشن مگر انکه اعشاری باشن مث گزینه یک
مورد دوم عدد با نمایش
scientific
شناخته میشه و عددی ک بعد از e میاد توان ۱۰ رو نشون میده(چیز جدیدی نیست و تو ریاضیات زیاد دیده میشه این طرز بیان)
مورد سوم چون با
0x
شرو شده داره یک عدد درمبنای ۱۶ رو نشون میده که علاوه برا اعداد ۰ تا ۹ میتونیم از کاراکترهای abcdef
هم استفاده کنیم
مورد ۴ام یک عدد مختلط رو نشون میده
j = sqrt(-1)
مورد ۵ام هم یک عدد معمولیه چیز خاصی نداره میتونید توی عددتون اندرلاین بزارید و مشکلی نداره فقط هواستون باشه نباید دوتا اندرلاین پشت سرهم بزارید
مورد ۷ام هم یک عدد باینری رو نشون میده که فقط باید صفر و یک باشه
مورد اخر هم یک عدد درمبنال ۸ رو نشون میده (اصطلاحا اعداد اوکتال هستن)
octal
و فقط ارقامش میتونه
۰۱۲۳۴۵۶۷
باشه
@raspberry_python
🐍 Python & Raspberry 🐍
دوستان لطفا درمورد جواب این سوال نپرسید اجازه بدید برای اسپویل نشدن سوال فعلا ب همون هینتی ک نوشتم بسنده کنید طبق معمول برای سوالای سخت و تریکی بعد چند روز ی توضیح خیلی مفصلی میزارم باتشکر
و اما جواب این سوال
با توجه به شکل بالا میبینیم که اعضای اول و دوم متغیر a به یک چیز دارن اشاره میکنن پس اگه یکیشو عوض کنیم اون یکی هم عوض میشه
@raspberry_python
با توجه به شکل بالا میبینیم که اعضای اول و دوم متغیر a به یک چیز دارن اشاره میکنن پس اگه یکیشو عوض کنیم اون یکی هم عوض میشه
@raspberry_python
Merge two text file into third using Python
ترکیب دو فایل متنی در یک فایل سوم با پایتون
کد در لینک اینستاگرام کانال
👇👇👇
https://www.instagram.com/p/CR1Ys4Ejvro/?utm_medium=copy_link
@raspberry_python
ترکیب دو فایل متنی در یک فایل سوم با پایتون
کد در لینک اینستاگرام کانال
👇👇👇
https://www.instagram.com/p/CR1Ys4Ejvro/?utm_medium=copy_link
@raspberry_python
🎞 work with YouTube videos in python, using "pafy"
🐍 PyPI: https://pypi.org/project/pafy/
🐈 github: https://github.com/mps-youtube/pafy
🆔 @raspberry_python
🐍 PyPI: https://pypi.org/project/pafy/
🐈 github: https://github.com/mps-youtube/pafy
🆔 @raspberry_python
میان برهای پایچارم
اگه
list comprehension
دارید و یهو تصمیم میگیرد اع باید اینو حلقه میزاشتم و کارای بیشتری میکردم خیلی راحت برید اولش و
alt+enter
رو بزنید و از پیشنهادای جذابش لذت ببرید
@raspberry_python
اگه
list comprehension
دارید و یهو تصمیم میگیرد اع باید اینو حلقه میزاشتم و کارای بیشتری میکردم خیلی راحت برید اولش و
alt+enter
رو بزنید و از پیشنهادای جذابش لذت ببرید
@raspberry_python
❓ کدوم یک نتیجهاش False هست؟
Final Results
9%
[x*2 for x in range(3)] == [0, 2, 4]
32%
(x*2 for x in range(3)) == (0, 2, 4)
28%
{x*2 for x in range(3)} == {0, 2, 4}
30%
{x: x*2 for x in range(3)} == {0: 0, 1: 2, 2: 4}
امروز میخوایم یک بار در رابطه مشکل معروفی که دوستان با نصب پکیج ها و سپس import نشدنشون دارن حرف بزنیم:
- مطمئن هستم که نصب کردم پکیج رو ولی موقع import کردن ارور میده که پیدا نمیکنه.
- روی ادیتور X به خوبی کار میکنه ولی روی Y نمیشناسه ماژول رو
- و سوال های مشابه این...
خب اول از همه اینکه برای import کردن و استفاده از هر ماژولی باید اون رو نصب کنید از طریق pip در غیر این صورت ارور زیر رو دریافت میکنید:
همون طور که میدونید شما میتونین روی سیستمون ورژن های مختلف پایتون رو داشته باشید و این ها بخوبی کنار هم کار میکنن.
هر پایتونی که نصب میکنید در واقع یه مفسر کاملا جداگانه از بقیه رو نصب میکنید! یعنی مثلا اگه پایتون 3.6 و 3.8 رو دارید هر کدوم کاملا مستقل از هم script های پایتونی شما رو اجرا میکنن و هیچ resource ای مشترک نیست بینشون.
از طرفی پایتون یه چیزی داره به اسم virtual environment که خیلی ساده میاد محیط های ایزوله میسازه برای "هر مفسر" ، که خوبیش اینکه باعث میشه پکیج های مختلف از پروژه های مختلف شما باهم تداخل نداشته باشن. حالا چطور ؟ به این صورت که وقتی شما یه venv جدید میسازین ، پایتون یه نسخه از interpreter اصلی رو به صورت خام داخلش قرار میده(یعنی هیچ پکیج اضافی از قبل نصب شده توش نیست).
حالا نکته ای که هست اینکه موقع installation پایتون وقتی شما اون رو به path سیستمتون اضافه میکنید، فقط و فقط اون مفسر اصلی به path اضافه میشه(بعدا میتونین تغییر بدین) و از طرفی کلمه ی python توی کنسول یا ترمینال فقط میتونه اشاره بکنه به یه مفسر ! این مفسر تو حالت دیفالت همون مفسر اصلیه موقع نصب هست.
پس الان فهمیدیم مشکل از کجاس ! پکیجمون رو توی یه مفسری نصب کردیم ولی داریم از یه مفسر دیگه ای برای اجرای کدمون استفاده میکنیم !
راه حل چیه ؟
1- چک کنیم کجا داریم نصب میکنیم.
2- چک کنیم چجوری داریم ران میکنیم.
وقتی شما cmd یا ترمینال رو باز میکنید میزنید:
windows :
برای تستش هم میتونید باز اون sys.executable رو وقتی active کردین بزنین ببنین که داره از مفسر اون virtual environment استفاده میکنه.
این برای virtual environment ها بود ، برای ورژن های مختلف پایتون چی ؟ با یه پسوند ورژنش رو انتخاب میکنید :
پس توی این مواقع برید و آدرس مفسری رو بدید که پکیج رو توش نصب کردین.
- مطمئن هستم که نصب کردم پکیج رو ولی موقع import کردن ارور میده که پیدا نمیکنه.
- روی ادیتور X به خوبی کار میکنه ولی روی Y نمیشناسه ماژول رو
- و سوال های مشابه این...
خب اول از همه اینکه برای import کردن و استفاده از هر ماژولی باید اون رو نصب کنید از طریق pip در غیر این صورت ارور زیر رو دریافت میکنید:
ModuleNotFoundError: No module named 'yechizi'
ولی حالا مشکل اکثرا اینه که ماژول رو نصب کردیم کامل هم پیام successful رو دیدیم ولی باز نمیتونیم استفاده کنیم.همون طور که میدونید شما میتونین روی سیستمون ورژن های مختلف پایتون رو داشته باشید و این ها بخوبی کنار هم کار میکنن.
هر پایتونی که نصب میکنید در واقع یه مفسر کاملا جداگانه از بقیه رو نصب میکنید! یعنی مثلا اگه پایتون 3.6 و 3.8 رو دارید هر کدوم کاملا مستقل از هم script های پایتونی شما رو اجرا میکنن و هیچ resource ای مشترک نیست بینشون.
از طرفی پایتون یه چیزی داره به اسم virtual environment که خیلی ساده میاد محیط های ایزوله میسازه برای "هر مفسر" ، که خوبیش اینکه باعث میشه پکیج های مختلف از پروژه های مختلف شما باهم تداخل نداشته باشن. حالا چطور ؟ به این صورت که وقتی شما یه venv جدید میسازین ، پایتون یه نسخه از interpreter اصلی رو به صورت خام داخلش قرار میده(یعنی هیچ پکیج اضافی از قبل نصب شده توش نیست).
حالا نکته ای که هست اینکه موقع installation پایتون وقتی شما اون رو به path سیستمتون اضافه میکنید، فقط و فقط اون مفسر اصلی به path اضافه میشه(بعدا میتونین تغییر بدین) و از طرفی کلمه ی python توی کنسول یا ترمینال فقط میتونه اشاره بکنه به یه مفسر ! این مفسر تو حالت دیفالت همون مفسر اصلیه موقع نصب هست.
پس الان فهمیدیم مشکل از کجاس ! پکیجمون رو توی یه مفسری نصب کردیم ولی داریم از یه مفسر دیگه ای برای اجرای کدمون استفاده میکنیم !
راه حل چیه ؟
1- چک کنیم کجا داریم نصب میکنیم.
2- چک کنیم چجوری داریم ران میکنیم.
import sys
print(sys.executable)
این کد به شما مسیر مفسری که پایتون داره باهاش اجرا میشه رو نشون میده که باهاش میشه همه چیزو فهمید.وقتی شما cmd یا ترمینال رو باز میکنید میزنید:
pip install yechiziاون پکیج فقط توی مفسری نصب میشه که آدرس توی path سیستم شما هست. اگر میخواید توی venv دیگه ای نصب بشه باید قبلش active کنید اون مفسرش رو، بعد بزنید. چجوری ؟
windows :
tutorial-env\Scripts\activate.batUnix or MacOS:
source tutorial-env/bin/activateوقتی فعال بشه اسم اون venv داخل پرانتز کنار command هاتون میاد.
برای تستش هم میتونید باز اون sys.executable رو وقتی active کردین بزنین ببنین که داره از مفسر اون virtual environment استفاده میکنه.
این برای virtual environment ها بود ، برای ورژن های مختلف پایتون چی ؟ با یه پسوند ورژنش رو انتخاب میکنید :
python3.6 -m pip install yechizi
حالا اگر موقع نصب اون ورژن مورد نظر از پایتون، اون رو به path اضافه نکرده باشین راه بالا جواب نمیده و مجبورین آدرس کامل pip اش رو بدین و بعد pip رو بزنید(به صورت دیفالت پایتون 3.9.5 در ویندوز اینجاس ) C:\
Users\<user_name>\AppData\Local\Programs\Python\Python39\Scripts\pip install yechizi
چجوری چک کنیم چه پکیج هایی داخل مفسرمون نصب شده ؟ آیا اونی که میخوایم توش هست یا نه ؟ اینجوری : (اکتیو کردنشم که سر جاشه)pip listهمه ی IDE ها و ادیتور هایی که قابلیت ران کردن script های شمارو دارن ، توی تنظیماتشون میتونید بهش آدرس بدین که از کدوم مفسر استفاده کنن. چه مفسر های global چه مفسر هایی که داخل venv ها هستن.
پس توی این مواقع برید و آدرس مفسری رو بدید که پکیج رو توش نصب کردین.