🐍 Python & Raspberry 🐍
8.21K subscribers
1.92K photos
125 videos
623 files
1.23K links
Python- Raspberry Pi-AI-IOT
ادمین : فرهاد ناصری زاده
@farhad_naserizadeh
@farhad3412

گروه پایتون
@Python_QA
تبادل
@mmtahmasbi
کانال مرتبط
@new_mathematical
@micropython_iot
@c_micro
اینستاگرام
http://Instagram.com/python_raspberry
Download Telegram
💐🍃🌿🌸
🍃🌺🍂 #vim #vimrc #texteditor #linux_command
🌿🍂 VIM AND VIMRC
🌸
#آموزش

🌟ویرایشگر متنی vim

یک ویرایش گر بسیار قدرتمندی هست که خیلی مواقع میتونه به دادمون برسه.
شاید در اولین دیدار با vim کسی خاطره خوشی نداشته باشه. دلیلش اینکه vim یه محیط بسیار متفاوت و عالی تر نسبت به مابقی ویرایشگر های متن داره. توی این برنامه شما دو محیط command و insert دارید. که میتونید با استفاده از کلید Esc به محیط command برید.
فرض کنید که به شما یه سرور دادن که باید مدیریتش کنید از راه دور. شما دیگه توی اون سرور که محیط X ندارید که ویرایشگر گرافیکی باز کنید. برای همین مجبورید از vim استفاده کنید یا اینکه وقتی که کارخرابی کردید و دیگه توی سیستم خودتونم محیط X هم ندارید.

نکته : در توزیع های لینوکس شما محیط گرافیکی X را دارید. که جدیدا Wayland در حال توسعه است.

خب ! چند تا نکته در مورد این vim :
۱- برای اینکه وارد محیط insert بشید و متنی تایپ کنید کافیه که از روی صفحه کلید. کلید i رو بزنید.( قبلش با فشردن دکمه Esc از بودن در محیط command اطمینان حاصل کنید)

۲- برای اینکه از محیط insert خارج بشید. باید از کلید Esc استفاده کنید.

۳- وقتی هم که میخواید کلا از برنامه خارج بشید.
+ با استفاده از دستور q: از برنامه خارج میشید.
+ با استفاده از دستور
:q!
از ویرایشگر خارج میشید بدون اینکه تغییراتی که در فایل دادید ذخیره بشه.
+ با استفاده از دستور
:w
تغییراتی که داده اید در فایل ثبت میشن.
+ شما میتونید این دستورات رو هم ترکیب هم بکنید. مثلا با استفاده از ترکیب
:wq
تغییرات در فایل نوشته میشود و از ویرایشگر خارج میشوید.

۴- با استفاده از کامند dd شما یک خط رو دیلیت میکنید.
+ همچنین میتونید دستور بدید که چه تعداد خط پاک بشن. به این صورت که اول تعداد خطی که نیاز هست پاک بشه نوشته میشه و یعد دستور dd. مثلا برای پاک کردن ۱۰۰۰ خط :
1000dd

برنامه vim یه ویرایشگر قدرتمند هست. میتونید با تایپ دستور vimtutor یک دوره آموزشی vim را در کامند لاین ببینید :)
همچنین میتونید از این آموزش هم استفاده کنید.

همچنین آموزش های بسیار خوبی برای شخصی سازی vim توسط اقای علیرضا امیرصمیمی در وبلاگشون قرار داره.

همانطوری که میدونید هر برنامه ای تقریبا یه فایل کانفینگ برای خودش در دایرکتوری etc دارد. فایل کانفینگی که ما باش کار داریم در آدرس
/etc/vim/vimrc
قرار داره. این فایل کانفینگ های vim رو مشخص میکنه.
یکی از ساده ترین شخصی سازی که میتونید انجام بدید اینکه شماره خطوط رو اصافه کنید.
برای اینکار شما با استفاده از این دستور این فایل رو با استفاده از همین ویرایشگر باز میکنید :)
sudo vim /etc/vim/vimrc
و بعد با استفاده از کلید G (دقت کنید که حروف بزرگ است) به انتهای فایل برید و
۱- میتونید با استفاده از زدن کلید i و رفتم به محیط insert و ایجاد یه خط جدید ..
۲- میتونید هم از کلید o استفاده کنید که همزمان یک خط جدید ایجاد میکند و به محیط insert وارد میشد
(بعد از اینکه با استفاده از یکی از دوروش بالا یک خط جدید درست کردید) این دستور رو به این فایل اضافه کنید :
set number
و با استفاده از کلید Esc به محیط command برید و دستور wq: را بزنید تا فایل رو ذخیره و خارج بشود.
بعد از اینکه دوباره وارد این برنامه شدید میبینید که شماره خطوط هم وارد شده است.

درصورتی که یه کاربر توزیع های لینوکس هستید برنامه vim یک ابزار بسیار عالی هست که بسیار در روند کار های روزانه میتونه به شما کمک کنه.
با تشکر از مهندس
@AhmadiNasab_Sg

🔰 @raspberry_python
💐🍃🌿🌸
🍃🌺🍂 #regex #python #re
🌿🍂 REGULAR EXPRESSION
🌸
#آموزش

🌟عبارت با قاعده یا regex (رجکس)😍

فرض کنید میخواید توی یه عالمه صفحه بشمارید ببینید چند تا اسم علی هست ! یا اینکه فرض کنید شما یه سایتی دارید که میخواید اطلاعات این سایت رو بگیره و مقادیر خاصیش رو نمایش بده.

نکته : در اینجا قصد آموزش regex را نداریم. فقط در حد آشنایی با این ابزار قدرتمند مینویسیم.

یه مثال داغون بزنیم:) . فرض کنید. شما یه رشته ای به این صورت دارید :
hassan hossein ali ahmad ali sajad shabnam shaghayegh ali javad
میخواید ببینید داخل این رشته چه تعداد اسم وجود داره که ۳ حرف هست و اولشون با a هست.
و به الفرض که این رشته رو هم از یک سایتی خوندید. regex به این صورت میشه :
\sa..\s
به این صورت که میگیم اولش یه whit space هست و بعد حرف a و بعد دو تا کاراکتر (هرکاراکتری) و بعد دوباره یک white space.
میتونیم پیشرفته ترش هم بکنیم. مثلا بگید که اولش حتما باید یک حرف بزرگ بین A تا D باشه :
\s[A-D]..\s

رجکس ها چیز های ساده ای هستن. به راحتی میشه نوشتشون ولی متاسفانه به سختی میشه خوندشون.
اینجا با چند تا از مواردی که میشه در این regex استفاده کرد گفته میشه :

۱-با استفاده از d\ میتونید بگید که حداقل یک عدد بین ۰ تا ۹.
۲-با استفاده از w\ میگید که حداقل یک کاراکتر ASCII.
۳-با استفاده از s\ میگید که یک white space باشه.

۱-کاراکتر * مشخص میکنه که هر چند تا. یعنی ۰ تا n.
۲-کاراکتر + مشخص میکنه که حداقل یکی یا بیشتر.
+ مثلا میخواید بگید که درصورتی که یکی یا بیشتر کاراکتر a بود :
a+
+ یا اینکه میخواید بگید که حداقل هیچی یا هر تعداد کاراکتر a بود :
a*
3-کاراکتر ? میگه یا یکی یا هیچی.


این موارد یکی از ساده ترین مواردی درمورد regex بودن. شما میتونید برای اطلاعات بیشتر در به این لینک ها مراجعه کنید :
http://www.rexegg.com/regex-quickstart.html
https://www.regular-expressions.info/

خب ! تا اینچا با regex آشنا شدیم.
حالا روش استفاده از این ابزار توی python3 به این صورت هست که شما باید ابتدا کتابخونه re را به برنامه اتون اضافه کنید.
اینجا میخوایم یه نمونه ساده را پیاده کنیم.
مثلا فرض کنید که یه لیستی به این صورت دارید :
email = [
"g1999saeed@gmail.com",
"shaghayegh1989@gmail.com",
"jadijadi@yahoo.com",
"feredManesh@micro.edu",
"JustForTest@Org.ppn"
]
حالا شما میخواید با استفاده از regex سرویس دهنده های این ایمیل هارو به دست بیارید برای اینکار ما باید یه regex به این صورت بنویسیم :
@(.*\..*)

نکته با استفاده از ( ) یک گروه درست میکنیم .
کد برنامه ی ما به اینصورت میشه :
for item in email :
export = re.search('@(.*\..*)',item);
print ( export.group(1) );
که خروجی حاصل به این صورت میشود :
gmail.com
gmail.com
yahoo.com
micro.edu
Org.ppn

برای آشنایی بیشتر با روش استفاده از regex در پایتون به این لینک مراجعه کنید:
https://docs.python.org/3/library/re.html

با تشکر
@AhmadiNasab_Sg

🔰 @raspberry_python
#آموزش

تغییر محتوای یک لیست
numbers = [5, 8, 1, 3, 2, 6]

numbers[2] = 2*numbers[0]

print(numbers)

OUTPUT:

[5, 8, 10, 3, 2, 6]

❇️ @raspberry_python
https://trix-editor.org/
یک خبر خوب برا دوستانی ک طراحی وب میکنند
اگه خواستید یک تکست ادیتور داخل سایتتون بزارید میتوانید از این کد استفاده کنید که کلی ابزار و امکانات بهتون میده :)

https://github.com/basecamp/trix

@raspberry_python
Qt5 Python GUI Programming

کتابی جدید
🌟سال انتشار 2018

🔰 @raspberry_python
B_M_Harwani_Qt5_Python_GUI_Programming.pdf
4.7 MB
Qt5 Python GUI Programming

کتابی جدید
🌟سال انتشار 2018

🔰 @raspberry_python
gps-cirocomm.pdf
609.2 KB
راه اندازی GPS با raspberry pi

🔰 @raspberry_python
سوال -> "با رزبری چیکار میشه کرد؟!"

جواب -> تاپ بزرگترین و جالب ترین پروژه هایی که با رزبری پای انجام و به مرحله اجرا رسیدن رو اینجا میتونید ببینید👇
https://www.makeuseof.com/tag/best-raspberry-pi-projects/
🔰 @raspberry_python
#آموزش
برای دانلود کردن یک پوشه خاص از یک ریپوزیتوی داخل گیت هاب میتوانیم از برنامه subversion استفاده کنیم:

in order to install just execute:
#apt-get install -y subversion
now u should just append /trunk to end of url
svn export https://github.com/owner/rep/trunk/path-to-file

even more we can specify the target folder
svn export https://github.com/owner/rep/trunk/path-to-file target-folder

@raspbery_python
Daniel_P_Bovet,_Marco_Cesati_Understanding.pdf
5.3 MB
understanding the linux kernel
@raspbery_python
python_book.pdf
3.9 MB
یک کتاب به زبان فارسی برای دوستانی که دنبال منابع فارسی هستند.
مولف: مهندس افشین رفوآ
@raspberry_python
Az in Pas Python - eBook.pdf
12.6 MB
کتاب از این پس پایتون یکی از بهترین منابع فارسی برای آموزش و یادگیری پایتون
@raspberry_python
python-for-students.pdf
13.9 MB
کتاب پایتون برای دانش آموزان
آموزش پایتون با بیان ساده و قابل فهم برای دانش آموزان
@raspbery_python
Max_Humber_Personal_Finance_with.pdf
3.8 MB
Personal Finance with Python
Using pandas, Requests, and Recurrent
🌟2018

🔰 @raspberry_python