🐍 Python & Raspberry 🐍
8.2K 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
میان برهای پایچارم

اگه
list comprehension
دارید و یهو تصمیم میگیرد اع باید اینو حلقه میزاشتم و کارای بیشتری میکردم خیلی راحت برید اولش و
alt+enter
رو بزنید و از پیشنهادای جذابش لذت ببرید

@raspberry_python
کدوم یک نتیجه‌اش False هست؟
Face Detection


@raspberry_python
Image Resolution

@raspberry_python
امروز میخوایم یک بار در رابطه مشکل معروفی که دوستان با نصب پکیج ها و سپس import نشدنشون دارن حرف بزنیم:
- مطمئن هستم که نصب کردم پکیج رو ولی موقع 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.bat

Unix 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 ها هستن.
پس توی این مواقع برید و آدرس مفسری رو بدید که پکیج رو توش نصب کردین.
Sites For IT Training Programming, Web Development, Networking And More.....

1. www.codecademy.com
2. www.lynda.com
3. www.udemy.com
4. www.udacity.com
5. www.coursera.org
6. www.w3schools.com
7. www.thenewboston.org
8. www.programmr.com
9. www.codeavengers.com
10. www.codeschool.com
11. www.learnstreet.com
12. www.teamtreehouse.com
13. www.sqlzoo.net
14. www.codehs.com
15. www.teamtreehouse.com
16. www.html5rocks.com
17. www.codepen.io
18. www.sitepoint.com
19. www.tutorialspoint.com
20. www.javatpoint.com
21. www.cplusplus.com
22. www.learncpp.com
23. www.tutorialspoint.com
24. www.cprogramming.com
25. www.stackoverflow.com
26. www.learncodethehardway.org
27. www.bloc.io
28. www.howtocode.io
29. www.edx.org
30. www.instructables.com
31. www.developer.apple.com
32. www.developer.android.com
33. www.developers.google.com
34. www.developer.mozilla.org
35. www.msdn.microsoft.com
36. www.dev.opera.com
37. www.www.developphp.com
38. www.quackit.com
39. www.htmlite.com
40. www.siteduzero.com
41. www.dreamincode.net
42. www.phpbuddy.com
43. www.php.net
44. www.microsoftvirtualacademy.com
45. www.professormesser.com

Photoshop and Graphics

1. www.adobe.com
2. www.adobeknowhow.com
3. www.pixel2life.com
4. www.photoshopessentials.co
5.www.photoshop-tutorials.deviantart.com
6. www.phlearn.com
7. www.design.tutsplus.com
8. www.practicalphotoshopmag.com
9. www.tutorial9.net
10. www.pshero.com
11. www.psdlearning.com
12. www.alison.com

Programing and Other IT Projects

1. www.freeprojectscode.com
2. www.sourcecodesworld.com
3. www.freecode.com
4. www.codeproject.com
5. www.freestudentprojects.com
6. www.programmersheaven.com
7. www.code.google.com
8. www.planet-source-code.com
9. www.dzone.com
10. www.thefreecountry.com
11. www.sourceforge.net
12. www.creately.com/diagram-examples
13. www.freewebsitetemplates.com
14. www.templatemo.com
15. www.oswd.org
16. www.designrazzi.net/2014/free-css3-html5- templates
17. www.html5up.net
18. www.freehtml5templates.com
19. www.themesbase.com/WordPress-Templates
20. www.templaty.com
21. www.arblogger-templates.com
22. www.templates.ssdaa.com

Create a Prefessional CV Online

1. www.khamsat.com
2. www.fiverr.com
3. www.odesk.com
4. www.elance.com
5. www.99designs.com
6. www.freelancer.com
7. www.guru.com
8. www.jobs.smashingmagazine.com
9. www.freelanced.com
10. www.ifreelance.com
11. www.peopleperhour.com
12 www.peopleperhour.com

Sites for Freelancers

1. www.khamsat.com
2. www.fiverr.com
3. www.odesk.com
4. www.elance.com
5. www.99designs.com
6. www.freelancer.com
7. www.guru.com
8. www.jobs.smashingmagazine.com
9. www.freelanced.com
10. www.ifreelance.com
11. www.peopleperhour.com
12 www.peopleperhour.com




@raspberry_python
Forwarded from Navid Alizadeh Vgaslou
تا حالا فکر کردی با متلب بازی بنویسی؟ 👨‍💻

بازی مکعب روبیک به زبان برنامه نویسی متلب
📚
مکعب روبیک یک جورچین مکانیکی است که در سال ۱۹۷۴ توسط یک مجسمه‌ساز و پروفسور معمار مجارستانی به نام ارنو روبیک ابداع شد. نام اصلی آن "مکعب جادویی" است که توسط مخترع آن نام‌گذاری شده‌ است.

دانلود سورس بازی مکعب روبیک

Matlab | برنامه نویسی متلب
https://t.me/Matlab_MathWorks
Forwarded from Navid Alizadeh Vgaslou
rubik.zip
796.4 KB
دانلود سورس بازی مکعب روبیک

Matlab | برنامه نویسی متلب
https://t.me/Matlab_MathWorks
Top 10 Sites for your career
1. Linkedin
2. Indeed
3. Naukri
4. Monster
5. JobBait
6. Careercloud
7. Dice
8. CareerBuilder
9. Jibberjobber
10. Glassdoor

10 Tech Skills in demand

1. Machine Learning
2. Mobile Development
3. SEO/SEM Marketing
4. Web development
5. Data Engineering
6. UI/UX Design
7. Cyber-security
8. Graphic designing
9. Blockchain
10. Digital marketing

11 Sites for Free Online Education

1. Coursera
2. edX
3. Khan Academy
4. Udemy
5. iTunesU Free Courses
6. MIT OpenCourseWare
7. Stanford Online
8. Codecademy
9. ict iitr
10 ict iitk
11 NPTEL

10 Sites to learn Excel for free

1. Microsoft Excel Help Center
2. Excel Exposure
3. Chandoo
4. Excel Central
5. Contextures
6. Excel Hero b.
7. Mr. Excel
8. Improve Your Excel
9. Excel Easy
10. Excel Jet

10 Sites to review your resume for free

1. Zety Resume Builder
2. Resumonk
3. Resume dot com
4. VisualCV
5. Cvmaker
6. ResumUP
7. Resume Genius
8. Resumebuilder
9. Resume Baking
10. Enhancy

10 Sites for Interview Preparation

1. Ambitionbox
2. AceThelnterview
3. Geeksforgeeks
4. Leetcode
5. Gainlo
6. Careercup
7. Codercareer
8. InterviewUp
9. InterviewBest
10. Indiabix

Top 5 freelancing website
1. Fiverr.com
2. Upwork.com
3. Guru.com
4. workchest.com

Top best free graphic design online site
1. Canva.com
2. Creelo.com
Forwarded from Navid Alizadeh Vgaslou
تا حالا فکر کردی با متلب بازی بنویسی؟ 👨‍💻

بازی معروف 2048 به زبان برنامه نویسی متلب
📚
۲۰۴۸ یک بازی ویدئویی برخط تک‌نفره ایست که در مارس ۲۰۱۴ توسّط گابریل سایرولی، یک توسعه دهندهٔ وب ۱۹ سالهٔ ایتالیایی، طرّاحی شد. سایرولی این بازی را به عنوان پروژهٔ آخر هفته و تنها در ۲ روز طرّاحی کرد و بازی در کمتر از ۱ هفته، ۴ میلیون بیننده داشت.

دانلود سورس بازی 2048

پسورد فایل : @Matlab_MathWorks
Matlab | برنامه نویسی متلب
https://t.me/Matlab_MathWorks
Forwarded from Navid Alizadeh Vgaslou
2048.zip
3.7 KB
دانلود سورس بازی 2048

پسورد فایل : @Matlab_MathWorks
Matlab | برنامه نویسی متلب
https://t.me/Matlab_MathWorks
Forwarded from 🐍 Python & Raspberry 🐍 (فرهاد ناصری زاده 🐍)
4 کتاب مهم برای شروع یادگیری پایتون


@raspberry_python
🔶Master Flutter - Learn Dart & Flutter by Developing 20 Apps🔶


📱 4.2 GB

🔗Download link:
https://drive.google.com/file/d/1JqBeVmzPsBYpmgNxpAGexyJIt2YhZ5M2/view

🆔 @raspberry_python
🐍 Python & Raspberry 🐍
کدوم یک نتیجه‌اش False هست؟
📸 میریم سراغ جواب این سوال
📝 احتمالا با list comprehension آشنا هستید:
[expression for variable in iterable if condition]
داخل این، روی iterable حلقه زده میشه و مقداری به variable اختصاص داده میشه، بعد اگه شرط condition (که گذاشتنش اختیاریه) برقرار بود، وارد بخش expression میشه و مقدار اون بخش رو تولید میکنه و میذاره توی لیست. مثلا:
>>> [x for x in range(5)]
[0, 1, 2, 3, 4]
>>> [x**2 for x in range(5)]
[0, 1, 4, 9, 16]
>>> [x**2 for x in range(5) if x%2==0]
[0, 4, 16]
رفع ابهام: میتونیم از if-else توی بخش expression استفاده کنیم؛ اما دقت کنید که این، با بخش condition فرق داره. در واقع، بخش condition اگه برقرار نبود، اصلا وارد بخش expression نمیشه که مقداری (توی اون دور از حلقه) اختصاص داده بشه؛ اما وقتی condition برقرار بود و [در نتیجه] وارد بخش expression شد، قطعا باید مقداری توی اون دور از حلقه قرار داده بده (برای همین، اگه قراره داخل expression، با شرط مقدار بذاریم، باید با if-else نوشته بشه که بهش میگیم conditional expression):
>>> [(x if x!=5 else "Hop!") for x in range(1, 6) if x%2==1]
[1, 3, 'Hop!']

البته میتونید بصورت تو در تو هم استفاده کنید که بهش Nested Comprehensions میگن. مثلا:
>>> [
... [x * y for y in range(5)]
... for x in range(5)
... ]
[
[0, 0, 0, 0, 0],
[0, 1, 2, 3, 4],
[0, 2, 4, 6, 8],
[0, 3, 6, 9, 12],
[0, 4, 8, 12, 16]
]

🔎 اما آیا فقط list comprehension داریم؟ .... نه! ۳ مورد مشابه دیگه هم داریم:
1. set comprehension (set comp)
2. dictionary comprehension (dict comp)
3. generator expression (genexpr!)
1️⃣ همینجوری که برای لیست نوشتیم و تعریف کردیم، برای مجموعه‌ها هم میتونیم بکار ببریم. منتهی این یکی، مقادیر رو توی یک مجموعه جمع‌آوری میکنه، نه توی لیست! و مثلا طبق خواص مجموعه، اعضای تکراری حذف میشن یا مثلا unhashable typeها رو نمیتونیم داخلش قرار بدیم و ... و به این شکل هست:
{expression for variable in iterable if condition}
2️⃣ به همین ترتیب هم برای دیکشنری؛ منتهی دقت کنید که این سری باید هم key رو مشخص کنیم هم value رو:
{expr1: expr2 for variable in iterable if condition}
3️⃣ میرسیم به genexpr! فرم کلی generator expression هم مشابه موارد قبلی هست، منتهی با پرانتز!
(expression for variable in iterable if condition)
اما دقت کنید که این، تاپل نیست! بلکه یک iterator هست. چرا؟ به نقل از این لینک، فرق اساسی تاپل با چیزایی که گفتیم، توی این هست که شما نمیتونید به یک تاپل، بعد از تشکیلش، مثلا مقداری append کنید یا extend کنید یا ... و در کل immutable هست، پس اگه یک آبجکتی ازش تشکیل میشه (در ابتدای comp)، نمیشه دوباره مقداری بهش اضافه کرد. حتی یک جا به struct توی C تشبیهش کردن! و به قولی:
"Generally, lists are for looping; tuples for structs. Lists are homogeneous; tuples heterogeneous. Lists for variable length."
برگردیم به بحث اصلی! گفتیم که یک iterator هست، پس همه مقادیر رو درجا به ما نمیده! و برای گرفتن مقدار، باید next کنیم (و وقتی هم مقداری باقی نمونده باشه، StopIteration میده). میشه unpack هم کرد، و ... مثلا:
>>> (x**2 for x in range(5))
<generator object <genexpr> at 0x7fa76d750580>
>>> itr = (x**2 for x in range(5))
>>> next(itr)
0
... و بعد از چندبار next کردن ...:
>>> next(itr)
16
>>> next(itr)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
StopIteration

🔬 همونطور که گفتیم، میتونیم اون رو unpack کنیم و در نتیجه میشه توی تاپل (و لیست و مجموعه و ...) هم ذخیره کرد. یا حتی میتونید مستقیما اون رو به tuple یا list یا ... بدید. مثلا:
>>> tuple(x**2 for x in range(5))
(0, 1, 4, 9, 16)
یا که بیاید کمی خفن‌تر بنویسید:) و اول unpack کنید و بعد، با یک ویرگول توی آخرش، بگید که همه مقادیر داخل یک تاپل برن (دقت کنید که اینجا بعد از گرفتن مقادیر، یک آبجکت تاپل تشکیل میشه و مقادیر باهم داخلش قرار میگیرن):
>>> *(x**2 for x in range(5)),
(0, 1, 4, 9, 16)
ازش میشه توی دادن آرگومان به تابع‌ها هم استفاده کرد (مخصوصا توابعی مثل print که چندین آرگومان میگیرن و معمولا با پارامتر *args این‌هارو تشخیص میدیم)؛ مثلا کدی که عدد بگیره و به تعداد اون، جملات ابتدایی دنباله فیبوناچی رو نشون بده (فرض کنید تابع fibonacci برای گرفتن عدد دنباله نوشته شده) :
>>> print(*(
... fibonacci(x)
... for x in range(1, int(input("count: "))+1)
... ), sep = ' -> '
... )
count: 10
1 -> 1 -> 2 -> 3 -> 5 -> 8 -> 13 -> 21 -> 34 -> 55

🆔 @raspberry_python
خروجی کد بالا را حدس بزنید ؟؟😎
خروجی کد بالا را حدس بزنید
Final Results
8%
8
42%
9
7%
7
23%
Error
21%
نمی‌دونم
Websites where companies post part-time, full-time and remote positions for you to apply to


Indeed — https://www.indeed.com
Craigslist — https://www.craigslist.com
Simply Hired — https://www.simplyhired.com
Authentic Jobs — https://authenticjobs.com
Robert Half — https://www.roberthalf.com
Krop — https://www.krop.com
Career Builder — https://www.careerbuilder.com
Linkedin Profinder — https://www.linkedin.com/profinder
Mashable — http://jobs.mashable.com/jobs/browse
Smashing Magazine — https://www.smashingmagazine.com/jobs
Power To Fly (Women) — https://powertofly.com
Who Is Hiring — https://whoishiring.io
WebDevJobs — https://webdevjobs.co
Aquent — https://aquent.com
Idealist — https://www.idealist.org
The Muse — https://www.themuse.com
Landing Jobs (UK) — https://landing.jobs
Sologig — https://www.sologig.com
Dice — https://www.dice.com
WPHired (Wordpress) — https://www.wphired.com
GitHub Jobs — https://jobs.github.com
Stack Overflow — https://stackoverflow.com/jobs

Startup Job Find
Websites that specialize in jobs for startup companies

Angel — https://angel.co
Underdog — https://underdog.io
Product Hunt — https://www.producthunt.com/jobs
Startupers — https://www.startupers.com
ycombinator — https://news.ycombinator.com/jobs


Freelancer Sites
Websites where individuals and companies post specific projects for freelancers

Upwork — https://www.upwork.com
Freelancer — https://www.freelancer.com
Freelancermap — https://www.freelancermap.com
Guru — https://www.guru.com
Outsource — https://outsource.com
Local Solo — https://localsolo.com
People Per Hour — https://www.peopleperhour.com
CloudPeeps — https://www.cloudpeeps.com
GigGrabbers — https://www.giggrabbers.com
Lemon.iohttps://lemon.io

Screened Freelancer Sites
Websites where they screen the freelancers to get the best possible providers for clients

Toptal — https://www.toptal.com
Coworks — https://coworks.com
Gun — https://www.gun.io
Folyo — https://folyo.me

Remote Jobs
Websites that focus on getting people remote work

Remoteco — https://remote.co/remote-jobs
We Work Remotely — https://weworkremotely.com
Remotive — https://remotive.io
Skip The Drive — https://www.skipthedrive.com
Working Nomads — https://www.workingnomads.co/jobs
Flex Jobs — https://www.flexjobs.com
Youteam — http://youteam.io

Micro Jobs/Services
Websites where you can post a service that you offer, usually for a low price

Fiverr — https://www.fiverr.com
Envato Studio — https://studio.envato.com
Gigbucks — https://gigbucks.com
Zeerk — https://zeerk.com
Task Army — https://taskarmy.com
Damongo — https://www.damongo.com

For Designers
Websites that are geared more toward designers and UI/UX

Behance — https://www.behance.net
Dribble — https://dribbble.com/jobs
Coroflot — https://www.coroflot.com/design-jobs
UX Job Board — https://www.uxjobsboard.com
DesignHill — https://www.designhill.com

Contests & Challenges

Websites that offer challenges and contests but at the same time, can get you hired

Topcoder — https://www.topcoder.com
Challenge Rocket — https://challengerocket.com
Hacker Rank — https://www.hackerrank.com

Big Companies

Microsoft — https://careers.microsoft.com/us/en
Google — https://careers.google.com/jobs
Amazon — https://www.amazon.jobs/
Apple — https://www.apple.com/jobs/us
Netflix — https://jobs.netflix.com
Ebay — https://careers.ebayinc.com/join-our-team/start-your-search


🆔 @raspberry_python
🟥🟨🟩🟧🟦🟥🟨🟪🟧🟩🟦

گروه 5400 نفره پایتون

👇👇👇👇👇👇👇👇👇


💥💥💥💥💥💥💥

@python_QA

💥💥💥💥💥💥💥
Forwarded from Navid Alizadeh Vgaslou
دانلود سورس نرم افزار تشخیص اثر انگشت به زبان برنامه نویسی متلب

شناسایی افراد با کمک داده های فیزیولوژیکی و رفتاری، اصلاحاً بیومتریک نامیده می شود.اسکن اثر انگشت عمومی ترین روش از روش های شناسایی بیومتریک حال حاضر می باشد. این روش در تعیین هویت از دقت ۱۰۰٪ برخوردار بوده و حتی در دوقلوهای یکسان (تک‌تخمکی) نیز اثر انگشت متفاوت است. به‌گونه‌ای که امکان شباهت اثر انگشت دو نفر انسان، یک در شصت و چهار میلیارد می‌باشد.

Matlab | برنامه نویسی متلب
https://t.me/Matlab_MathWorks