🎲 کتابخانه random در پایتون
مقدمه
در بسیاری از برنامهها نیاز داریم اتفاقات غیرقابل پیشبینی را شبیهسازی کنیم. برای مثال:
- انداختن تاس
- پرتاب سکه
- قرعهکشی
- انتخاب تصادفی افراد
- بازیهای کامپیوتری
- تولید دادههای آزمایشی
پایتون برای انجام این کارها کتابخانه قدرتمندی به نام random را در اختیار ما قرار داده است.
برای استفاده از این کتابخانه کافی است آن را وارد برنامه کنیم:
import random
---
🎯 تابع randint()
یکی از پرکاربردترین توابع کتابخانه random، تابع "randint()" است.
ساختار:
random.randint(a, b)
این تابع یک عدد صحیح تصادفی بین دو عدد a و b (شامل هر دو مقدار) تولید میکند.
مثال
import random
number = random.randint(1, 10)
print(number)
نمونه خروجی:
7
هر بار اجرای برنامه ممکن است عدد متفاوتی نمایش داده شود.
---
🎲 شبیهسازی تاس
یکی از رایجترین کاربردهای randint شبیهسازی تاس است.
import random
dice = random.randint(1, 6)
print("🎲 عدد تاس:", dice)
نمونه خروجی:
🎲 عدد تاس: 4
---
🎲 تاس دوبل
import random
dice1 = random.randint(1, 6)
dice2 = random.randint(1, 6)
print("تاس اول:", dice1)
print("تاس دوم:", dice2)
print("جمع:", dice1 + dice2)
---
🪙 پرتاب سکه
تابع "choice()" برای انتخاب تصادفی از یک لیست استفاده میشود.
import random
coin = random.choice(["شیر", "خط"])
print(coin)
نمونه خروجی:
شیر
---
🎨 تابع choice()
انتخاب تصادفی از یک مجموعه داده
import random
colors = [
"قرمز",
"آبی",
"سبز",
"زرد"
]
print(random.choice(colors))
---
🏆 قرعهکشی بین شرکتکنندگان
import random
participants = [
"علی",
"رضا",
"محمد",
"زهرا",
"سارا"
]
winner = random.choice(participants)
print("🏆 برنده:", winner)
---
🔢 تابع random()
این تابع یک عدد اعشاری تصادفی بین صفر و یک تولید میکند.
import random
print(random.random())
نمونه خروجی:
0.582147
---
📏 تابع uniform()
تولید عدد اعشاری تصادفی در یک بازه دلخواه
import random
print(random.uniform(10, 20))
نمونه خروجی:
15.37
---
🔀 تابع shuffle()
بههم زدن ترتیب عناصر یک لیست
import random
cards = [
"A",
"K",
"Q",
"J"
]
random.shuffle(cards)
print(cards)
نمونه خروجی:
['Q', 'A', 'J', 'K']
---
🎫 تابع sample()
انتخاب چند عضو تصادفی بدون تکرار
import random
numbers = range(1, 50)
lottery = random.sample(numbers, 6)
print(lottery)
نمونه خروجی:
[5, 11, 19, 27, 34, 42]
---
🎯 بازی حدس عدد
import random
secret = random.randint(1, 10)
guess = int(input("حدس شما: "))
if guess == secret:
print("🎉 آفرین! درست حدس زدی.")
else:
print("❌ اشتباه!")
print("عدد صحیح:", secret)
---
🎰 پروژه جذاب: دستگاه شانس
import random
symbols = [
"🍒",
"🍋",
"⭐",
"💎"
]
a = random.choice(symbols)
b = random.choice(symbols)
c = random.choice(symbols)
print(a, b, c)
if a == b == c:
print("🏆 برنده شدید!")
else:
print("😄 دوباره تلاش کنید.")
نمونه خروجی:
🍒 🍒 🍒
🏆 برنده شدید!
---
🎮 کاربردهای واقعی کتابخانه random
بازیسازی
- انداختن تاس
- پرتاب سکه
- انتخاب دشمن
- تولید آیتمهای تصادفی
آموزش
- انتخاب تصادفی دانشآموز
- طراحی آزمون
- ساخت بازیهای آموزشی
قرعهکشی
- انتخاب برنده
- مسابقات
- جشنوارهها
شبیهسازی
- ترافیک
- صف بانک
- سیستمهای آماری
---
⭐ جمعبندی
کتابخانه random یکی از محبوبترین کتابخانههای داخلی پایتون است که برای تولید مقادیر تصادفی استفاده میشود.
مهمترین توابع آن:
تابع| کاربرد
randint()| عدد صحیح تصادفی
random()| عدد اعشاری بین 0 و 1
uniform()| عدد اعشاری در بازه دلخواه
choice()| انتخاب تصادفی از لیست
shuffle()| بههم زدن ترتیب لیست
sample()| انتخاب چند عضو بدون تکرار
با یادگیری این کتابخانه میتوانید بازیها، قرعهکشیها، شبیهسازیها و پروژههای جذاب زیادی ایجاد کنید.
هدایت شده از یاسر محمودیان
🎲 random.randint؛ سادهترین راه برای تولید اعداد تصادفی در پایتون
با یک خط کد، هر عدد صحیح دلخواه را بین دو مقدار (شامل هر دو) تولید کن.
مناسب برای: شبیهسازی، بازی، قرعهکشی، نمونهگیری داده و تستهای ساده.
هدایت شده از یاسر محمودیان
dice_password_random.py
حجم:
340Byte
📱 ثبتنام دوره جدید «ساخت شبیهساز با HTML، CSS و JavaScript روی گوشی»
آیا میدانستید فقط با یک گوشی و اینترنت میتوانید برنامه، بازی و پروژههای آموزشی حرفهای بسازید؟ 😎
✅ کدنویسی با هوش مصنوعی
✅ تبدیل ایده به پروژه در کمتر از ۱ دقیقه
✅ طراحی صفحات وب حرفهای
✅ ساخت بازیهای جذاب و تعاملی
✅ طراحی کاربرگهای آموزشی هوشمند و تعاملی
✅ ساخت آزمون آنلاین همراه با کارنامه
✅ ایجاد نمودارها و پروژههای آموزشی کاربردی
✅ تبدیل مفاهیم درسی به محتوای جذاب و بصری
🎯 مناسب دانشآموزان، دانشجویان، معلمان و تمامی علاقهمندان
❌ بدون نیاز به لپتاپ
❌ بدون نیاز به دانش قبلی برنامهنویسی
📱 فقط با یک گوشی و اینترنت
👨🏫 مدرس: یاسر محمودیان
کارشناس ارشد مهندسی کامپیوتر | مربی برنامهنویسی و هوش مصنوعی
⚠️ ظرفیت محدود | اولویت با ثبتنام زودتر
📲 ثبتنام و اطلاعات بیشتر:
🔹 تلگرام: t.me/PyPlus_Admin
🔹 روبیکا: rubika.ir/PyPlus_Admin
🔹 ایتا: eitaa.com/learns_py
🔹 اینستاگرام: instagram.com/learns.py
📢 معرفی دورههای آموزش برنامهنویسی
به اطلاع علاقهمندان میرساند مجموعهای از دورههای تخصصی برنامهنویسی با هدف آموزش مهارتهای کاربردی و آمادهسازی هنرجویان برای مسیرهای حرفهای و رقابتی برگزار میگردد.
---
🎯 دوره مقدماتی آموزش پایتون
حداقل سن: ۱۲ سال
مناسب برای شروع برنامهنویسی از پایه
امکان شرکت با گوشی یا لپتاپ
کلاسها بهصورت مجزا برای آقایان و خانمها
مدت دوره: ۱۰ جلسه
شهریه: ۲,۱۰۰,۰۰۰ تومان
ارائه گواهی پایان دوره از کانون
ویژه هنرجویان ۱۵ سال به بالا: امکان دریافت گواهی از سازمان فنی و حرفهای (در صورت تکمیل ظرفیت)
---
🎯 دوره متوسطه آموزش پایتون
پیشنیاز: گذراندن دوره مقدماتی
ترجیحاً با لپتاپ
مدت دوره: ۱۰ جلسه (هر جلسه ۱.۵ ساعت)
شهریه: مطابق دوره مقدماتی
---
🎯 دوره جدید: مدیریت فایلها در پایتون
ویژه هنرجویان دوره مقدماتی
مناسب برای علاقهمندان به هوش مصنوعی، جشنوارهها و مسابقات
پیشنیاز: دوره مقدماتی
داشتن لپتاپ الزامی
مدت دوره: ۴ جلسه
شهریه: ۱,۰۰۰,۰۰۰ تومان
🎯 دوره شبیهسازی (HTML, CSS, JavaScript)
آموزش ساخت شبیهساز با موبایل
مدت دوره: ۲ جلسه
شهریه: ۵۰۰,۰۰۰ تومان
تنها با گوشی و اینترنت قابل اجرا است
📍 برای ثبتنام و کسب اطلاعات بیشتر پیام بدهید
📢 دورههای تخصصی برنامهنویسی پایتون و توسعه مهارتهای دیجیتال
مسیر یادگیری برنامهنویسی، مسیری برای ورود به آیندهی فناوری است؛ از تحلیل داده و هوش مصنوعی تا ساخت نرمافزار و پروژههای واقعی.
در ادامه، دورههای آموزشی بهصورت جداگانه معرفی شدهاند:
🐍 دوره جامع آموزش پایتون – مقدماتی
✨ معرفی دوره
این دوره نقطه شروع ورود به دنیای برنامهنویسی است. در این مسیر، هنرجو از پایه با منطق برنامهنویسی آشنا شده و توانایی حل مسئله و کدنویسی اصولی را بهدست میآورد.
🎯 اهمیت یادگیری
پایتون یکی از پرکاربردترین زبانهای دنیا در حوزههای:
هوش مصنوعی 🤖
تحلیل داده 📊
توسعه وب 🌐
اتوماسیون و اسکریپتنویسی ⚙️
یادگیری آن، یک سرمایهگذاری برای آینده شغلی محسوب میشود.
📚 سرفصلها
مبانی برنامهنویسی و منطق حل مسئله
متغیرها، انواع داده و عملگرها
شرطها و حلقهها
لیست، دیکشنری، تاپل و مجموعهها
توابع و مدیریت خطا
کار با فایلها (txt, csv)
آشنایی با ماژولها و کتابخانهها
🚀 دوره آموزش پایتون – متوسطه
✨ معرفی دوره
این دوره برای ارتقای مهارت هنرجویانی طراحی شده که مبانی پایتون را گذراندهاند و قصد ورود به پروژههای واقعیتر و حرفهایتر دارند.
🎯 اهمیت یادگیری
این مرحله، پلی است بین آموزش مقدماتی و ورود به دنیای:
پروژهمحور واقعی
برنامهنویسی حرفهای
آمادگی برای هوش مصنوعی و دادهکاوی
📚 سرفصلها
برنامهنویسی شیءگرا (OOP)
توابع پیشرفته و ساختارهای حرفهای کد
کار با فایلهای JSON و CSV
آشنایی با NumPy و Pandas
زمان، تاریخ و دادههای تصادفی
ساخت رابط گرافیکی با Tkinter
آشنایی مقدماتی با Pygame
پردازش تصویر با OpenCV و Pillow
کار با API و کتابخانه requests
رسم نمودار و تحلیل داده
📁 دوره مدیریت فایلها در پایتون (ویژه و کاربردی)
✨ معرفی دوره
این دوره برای اولین بار برگزار میشود و بهصورت کاملاً کاربردی، هنرجو را با مدیریت انواع فایلها در پایتون آشنا میکند.
🎯 اهمیت یادگیری
این مهارت یکی از پایههای اصلی در:
هوش مصنوعی 🤖
علم داده 📊
پروژههای واقعی نرمافزاری 💻
مسابقات و جشنوارههای برنامهنویسی 🏆
است و نقش کلیدی در کار با دادههای واقعی دارد.
📚 سرفصلها
فایلهای متنی (TXT) و جدولی (CSV)
فایلهای Excel و گزارشگیری حرفهای
فایلهای PDF و استخراج اطلاعات
پایگاه داده SQLite
ذخیره مدلها با Pickle
پردازش تصویر (JPG, PNG)
پردازش صوت و ویدئو
کار با فایلهای چندرسانهای
🌐 دوره ساخت شبیهساز با HTML، CSS و JavaScript (موبایلی)
✨ معرفی دوره
این دوره یک تجربه متفاوت است؛ آموزش طراحی و ساخت پروژههای تعاملی فقط با گوشی موبایل.
🎯 اهمیت یادگیری
این دوره مسیر ورود سریع به:
طراحی وب 🌐
ساخت رابطهای کاربری
پروژههای آموزشی و تعاملی
استفاده از هوش مصنوعی در کدنویسی 🤖
را فراهم میکند.
📚 سرفصلها
طراحی صفحات وب با HTML
استایلدهی حرفهای با CSS
تعامل با JavaScript
ساخت بازیها و شبیهسازها
استفاده از ابزارهای هوش مصنوعی برای کدنویسی
پروژههای کاربردی (بازی، آزمون، ماشینحساب و...)
تبدیل ایده به محصول واقعی
🎓 جمعبندی
این دورهها با هدف: ✔ آموزش اصولی و پروژهمحور
✔ آمادگی برای بازار کار آینده
✔ ورود به هوش مصنوعی و فناوریهای نوین
✔ ساخت نمونهکار حرفهای
طراحی شدهاند.
📍 برای ثبتنام و اطلاعات بیشتر پیام دهید.
📚 مرجع کامل حلقهها در پایتون
اگر به دنبال یک فایل جمعوجور هستی که همه روشهای تکرار در پایتون را با مثال پوشش بده، این مطلب برای شما:
✅ حلقه for روی range، لیست، رشته، دیکشنری
✅ while به همراه break، continue، else
✅ enumerate، zip، حلقههای تو در تو
✅ درک لیست، مجموعه، دیکشنری
✅ حلقههای نامحدود و پیمایش با iter/next
فایل رو با اسم all_python_loops.py ذخیره کن و همیشه در دسترس داشته باش.
pygame_.py
حجم:
1.4K
🔥 چالش زوم خلاقانه – بدون هیچ کلیدی!
تا حالا دیدی یه توپ با نزدیک شدن ماوس بزرگ بشه؟
این بار نه خبری از + و – هست، نه اسکرول.
🖱 هرچقدر ماوس رو به توپ نزدیکتر کنی، بزرگتر میشه
و هرچی دورتر بشی، کوچکتر میشه!
📏 فاصلهات با توپ، تنها کنترلکننده اندازهست.
👀 تجربهای جدید از تعامل با اشیاء گرافیکی.
🐍 کدش با Pygame نوشته شده و توی ۵۰ خط میتونستی خودت بسازیش.
🎯 چالش: توپ رو به بزرگترین اندازه برسون بدون اینکه ماوس روش بذاری!
loops_game.py
حجم:
2.7K
🎮 بازی آموزش حلقههای پایتون با انیمیشن توپهای رنگی
🔹 کلید ۱ → حالت For : با زدن Space، ۵ توپ جدید اضافه میشود.
🔹 کلید ۲ → حالت While : تا وقتی توپها کمتر از ۱۲ باشه، یکی یکی اضافه میکنه تا برسه به ۱۲.
🔹 کلید ۳ → حالت If : اگر توپ قرمز وجود داشته باشه، یکی از آنها حذف میشه.
👀 روی صفحه تعداد توپها و حالت فعال رو میبینی.
✅ هر بار که Space میزنی، کد مربوط به همون حلقه یا شرط اجرا میشه و انیمیشن توپها تغییر میکنه.
📌 هدف: درک عملی تفاوت حلقه for (تعداد مشخص)، حلقه while (تکرار شرطی) و عبارت if (شرط یکباره) در محیط گرافیکی.
🐍 کد کامل بازی فقط ۵۰ خطه و با Pygame نوشته شده.
چالش توپ زوم: + و - برای تغییر اندازه