پایتون | هوش مصنوعی | voidcompile
6.06K subscribers
270 photos
49 files
61 links
یادگیری برنامه نویسی، هوش مصنوعی، دیتا ساینس و پروژه‌های تحقیقاتی
آموزش پایتون ، هوش مصنوعی ، یادگیری ماشین ، لینوکس، تکنولوژی‌ های روز برنامه‌ نویسی.
Python | Machine Learning | Biopython | AI

تبلیغات و همکاری : @void_compile
Download Telegram
پایتون | هوش مصنوعی | voidcompile
در این پروژه جذاب با Python، با استفاده از NumPy و Matplotlib، پیاده‌سازی یکی از معروف‌ترین شبیه‌سازی‌های جهان رو می‌بینیم: Conway’s Game of Life. این شبیه‌سازی یک Cellular Automaton هست که از قوانین بسیار ساده، رفتارهای فوق‌العاده پیچیده و جالب ایجاد می‌کنه!…
از قوانین فوق‌العاده ساده، رفتارهای پیچیده و شگفت‌انگیز به‌وجود میاد (Glider، Oscillator، Still Life و ...).

import numpy as np                  # وارد کردن numpy برای کار با آرایه‌ها
import matplotlib.pyplot as plt # وارد کردن matplotlib برای نمایش تصویری
import matplotlib.animation as animation # وارد کردن انیمیشن برای نمایش مراحل

# تابعی که یک شبکه تصادفی اولیه می‌سازد
def random_grid(n, p=0.2):
# n: اندازه شبکه (n x n)
# p: احتمال اینکه هر خانه در ابتدا زنده باشد
return (np.random.rand(n, n) < p).astype(int) # آرایه صفر/یک با احتمال p

# تابع بروزرسانی قوانین بازی زندگی
def update(frameNum, img, grid):
# frameNum: شماره فریم (نیاز انیماتور)
# img: آبجکتی که تصویر را به روز می‌کند
# grid: آرایه وضعیت کنونی (0 مرده، 1 زنده)

# شمارش همسایه‌ها با roll (شیفت آرایه)، بدون لایبرری اضافی
neighbors = (
np.roll(np.roll(grid, 1, 0), 1, 1) + # بالا-چپ
np.roll(grid, 1, 0) + # بالا
np.roll(np.roll(grid, 1, 0), -1, 1) +# بالا-راست
np.roll(grid, -1, 0) + # پایین
np.roll(np.roll(grid, -1, 0), 1, 1) +# پایین-چپ
np.roll(np.roll(grid, -1, 0), -1, 1)+# پایین-راست
np.roll(grid, 1, 1) + # چپ
np.roll(grid, -1, 1) # راست
)

# اعمال قوانین کانوی:
# - خانه زنده با 2 یا 3 همسایه زنده می‌ماند
# - خانه مرده با دقیقاً 3 همسایه زنده زنده می‌شود (تولید مثل)
newGrid = ((grid == 1) & ((neighbors == 2) | (neighbors == 3))) | ((grid == 0) & (neighbors == 3))
newGrid = newGrid.astype(int) # تبدیل به 0/1

img.set_data(newGrid) # به‌روزرسانی داده‌های تصویر
grid[:] = newGrid # به‌روزرسانی شبکه مرجع (مهم برای پاس به انیماتور)
return img,

# اگر مستقیم اجرا شد، انیمیشن را بساز
if __name__ == "__main__":
N = 80 # اندازه شبکه (مثلاً 80x80)
prob = 0.18 # چگالی اولیه سلول‌های زنده
np.random.seed(42) # برای تکرارپذیری نتایج در هر اجرا

grid = random_grid(N, prob) # ساخت شبکه اولیه

fig, ax = plt.subplots(figsize=(6,6)) # ایجاد پنجره و محور برای تصویر
img = ax.imshow(grid, interpolation='nearest', cmap='binary') # نمایش اولیه (سیاه/سفید)
ax.set_title("Conway's Game of Life") # عنوان شکل
ax.axis('off') # مخفی‌کردن محور برای ظاهر بهتر

# ساخت انیمیشن: هر 100 میلی‌ثانیه یک فریم
ani = animation.FuncAnimation(fig, update, fargs=(img, grid),
frames=200, interval=100, blit=True)

plt.show() # نمایش انیمیشن

دوست دارید کد رو توسعه بدیم؟ و پیشرفته ترش کنیم ؟ ☕️

#LearnPython@voidcompile

💻@voidcompile
2👍23🔥2019🤩18💯14
درود رفقا
برای دسترسی راحت تر به محتوای کانال اینجوری می توانید استفاده کنید:

📚 برای دسترسی به پی دی اف یا کتاب های آموزشی:
#pdf@voidcompile
#book@voidcompile

💻برای دسترسی به آموزش و کد های پایتونی :
#LearnPython@voidcompile

🔗برای دسترسی به ریپو هایی که قرار دادیم :
#repo@voidcompile


این لیست آپدیت می شود .



تیم ما در حال تلاش برای محتوای بهتر و با کیفیت تر همیشه هست ممنون که حمایت می کنید .

💻@voidcompile
4👍3634🔥21🤩18💯15
پایتون | هوش مصنوعی | voidcompile
از قوانین فوق‌العاده ساده، رفتارهای پیچیده و شگفت‌انگیز به‌وجود میاد (Glider، Oscillator، Still Life و ...). import numpy as np # وارد کردن numpy برای کار با آرایه‌ها import matplotlib.pyplot as plt # وارد کردن matplotlib برای نمایش تصویری…
🕒 کد ساعت دیجیتال با پایتون

با این کد ساده می‌تونی یک ساعت دیجیتال زنده داخل ترمینال خودت داشته باشی!
کافیه اجراش کنی و هر ثانیه ساعت به‌روز می‌شه.

📌 مفاهیم آموزشی داخل کد:

ماژول time برای گرفتن ساعت سیستم

ماژول os برای پاک‌کردن ترمینال

کار با حلقه‌ی بی‌نهایت و توقف با Ctrl+C


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

import time
import os

def clear():
os.system("cls" if os.name == "nt" else "clear")

while True:
clear()
print(" ساعت دیجیتال پایتون \n")
print(time.strftime("%H:%M:%S"))
time.sleep(1)

#LearnPython@voidcompile
#code
💻@voidcompile
2👍21🤩15🔥1110💯10
پایتون | هوش مصنوعی | voidcompile
🕒 کد ساعت دیجیتال با پایتون با این کد ساده می‌تونی یک ساعت دیجیتال زنده داخل ترمینال خودت داشته باشی! کافیه اجراش کنی و هر ثانیه ساعت به‌روز می‌شه. 📌 مفاهیم آموزشی داخل کد: ماژول time برای گرفتن ساعت سیستم ماژول os برای پاک‌کردن ترمینال کار با حلقه‌ی…
🚀 تجربه‌ی برنامه‌نویسی متفاوت با پایتون!

این کد باحال پایتون یه اثر هنری متحرک روی ترمینال ایجاد می‌کنه که با سینوس و کسینوس و حلقه‌ها شکل می‌گیره.
import time
import os
import math

# تابع برای پاک کردن صفحه
def clear():
os.system('cls' if os.name == 'nt' else 'clear')

# اندازه و مقیاس اثر
width = 60
height = 20

t = 0
try:
while True:
clear()
for y in range(height):
line = ""
for x in range(width):
# محاسبه الگو با سینوس و کسینوس
value = math.sin(x * 0.3 + t) + math.cos(y * 0.3 + t)
if value > 1:
line += "@"
elif value > 0.5:
line += "#"
elif value > 0:
line += "*"
else:
line += " "
print(line)
t += 0.2
time.sleep(0.1)
except KeyboardInterrupt:
print("\nBye!")

#LearnPython@voidcompile
#python

💻@voidcompile
1🔥36👍3331🤩22💯19
پایتون | هوش مصنوعی | voidcompile
🚀 تجربه‌ی برنامه‌نویسی متفاوت با پایتون! این کد باحال پایتون یه اثر هنری متحرک روی ترمینال ایجاد می‌کنه که با سینوس و کسینوس و حلقه‌ها شکل می‌گیره. import time import os import math # تابع برای پاک کردن صفحه def clear(): os.system('cls' if os.name ==…
🎨🌈 ساخت گل رنگین‌کمانی با پایتون و Turtle 🌸💻

اگر به برنامه‌نویسی پایتون علاقه‌مند هستی و می‌خوای چیزی باحال و جذاب بسازی، این پروژه بهترین انتخابه! 🚀 با کتابخونه‌ی Turtle می‌تونی فقط با چند خط کد، یه گل رنگی و انیمیشنی روی صفحه طراحی کنی.

مناسب برای مبتدی‌ها و حرفه‌ای‌ها
تمرین عالی برای گرافیک در پایتون
بدون نیاز به کتابخونه اضافی
سرگرم‌کننده و خلاقانه

import turtle
import colorsys

# Setup screen
screen = turtle.Screen()
screen.bgcolor("black")
screen.title("Spinning Colorful Flower 🌸")

# Setup turtle
t = turtle.Turtle()
t.speed(0)
turtle.colormode(255) # Use RGB colors

# Number of petals and circles
num_petals = 36
num_circles = 36

for i in range(num_circles):
# Generate rainbow colors
color = colorsys.hsv_to_rgb(i/num_circles, 1, 1)
t.pencolor(int(color[0]*255), int(color[1]*255), int(color[2]*255))
t.circle(100)
t.right(360/num_circles)

t.hideturtle()
turtle.done()

#LearnPython@voidcompile
💻@voidcompile
4👍18🔥15💯117🤩5
پایتون | هوش مصنوعی | voidcompile
🎨🌈 ساخت گل رنگین‌کمانی با پایتون و Turtle 🌸💻 اگر به برنامه‌نویسی پایتون علاقه‌مند هستی و می‌خوای چیزی باحال و جذاب بسازی، این پروژه بهترین انتخابه! 🚀 با کتابخونه‌ی Turtle می‌تونی فقط با چند خط کد، یه گل رنگی و انیمیشنی روی صفحه طراحی کنی. مناسب برای مبتدی‌ها…
🤯 این نقاشی رو پایتون کشیده!
فقط با چند خط کد می‌تونی طرح‌های هنری و فرکتالی درست کنی 🎨🐍

import numpy as np
import matplotlib.pyplot as plt

# ایجاد مختصات
x = np.linspace(-2, 2, 1000)
y = np.linspace(-2, 2, 1000)
X, Y = np.meshgrid(x, y)
Z = X2 - Y2 + 1j*(2*X*Y)

# محاسبه تعداد تکرار
C = Z
for i in range(20):
Z = Z**2 + C

# نمایش طرح
plt.imshow(np.angle(Z), cmap="twilight", extent=(-2,2,-2,2))
plt.axis("off")
plt.show()

#LearnPython@voidcompile
💻@voidcompile
2💯1412🤩11🔥10👍6
پایتون | هوش مصنوعی | voidcompile
تایمر گرافیکی با پایتون (Python GUI Timer) اگر به دنبال یک پروژه‌ی جذاب برای یادگیری برنامه‌نویسی پایتون هستی، ساخت تایمر گرافیکی (Graphical Timer) با استفاده از کتابخانه‌ی Tkinter یکی از بهترین انتخاب‌هاست! 🔹 در این پروژه یاد می‌گیری: طراحی رابط کاربری…
کد تایمر گرافیکی ساده

import tkinter as tk

class TimerApp:
def __init__(self, root):
self.root = root
self.root.title(" Timer")
self.root.geometry("300x200")
self.root.configure(bg="black")

self.time_left = 60 # زمان اولیه تایمر (به ثانیه)

# 🎨 برچسب نمایش زمان
self.label = tk.Label(
root,
text=self.format_time(self.time_left),
font=("Helvetica", 48),
fg="cyan",
bg="black"
)
self.label.pack(expand=True)

# دکمه شروع تایمر
self.start_button = tk.Button(root, text=" Start", command=self.start_timer, bg="green", fg="white")
self.start_button.pack(side="left", expand=True, fill="both")

# 🔄 دکمه ریست تایمر
self.reset_button = tk.Button(root, text="🔄 Reset", command=self.reset_timer, bg="red", fg="white")
self.reset_button.pack(side="right", expand=True, fill="both")

self.running = False # 📌 وضعیت تایمر (در حال اجرا یا متوقف)

def format_time(self, seconds):
# تبدیل ثانیه به دقیقه:ثانیه (mm:ss)
mins = seconds // 60
secs = seconds % 60
return f"{mins:02}:{secs:02}"

def update_timer(self):
# کاهش یک ثانیه و آپدیت صفحه
if self.running and self.time_left > 0:
self.time_left -= 1
self.label.config(text=self.format_time(self.time_left))
self.root.after(1000, self.update_timer) # هر ۱۰۰۰ میلی‌ثانیه (۱ ثانیه) اجرا بشه
elif self.time_left == 0:
self.label.config(text=" Time's up!") # وقتی تایمر تموم شد

def start_timer(self):
# شروع تایمر
if not self.running:
self.running = True
self.update_timer()

def reset_timer(self):
# 🔄 ریست تایمر به مقدار اولیه
self.running = False
self.time_left = 60
self.label.config(text=self.format_time(self.time_left))


if __name__ == "__main__":
root = tk.Tk()
app = TimerApp(root)
root.mainloop()

ری اکشن یادتون نره رفقا


#code #python
#LearnPython@voidcompile
💻@voidcompile
1🔥17👍139💯8🤩5👨‍💻3
پایتون | هوش مصنوعی | voidcompile
تایمر گرافیکی با پایتون (Python GUI Timer) اگر به دنبال یک پروژه‌ی جذاب برای یادگیری برنامه‌نویسی پایتون هستی، ساخت تایمر گرافیکی (Graphical Timer) با استفاده از کتابخانه‌ی Tkinter یکی از بهترین انتخاب‌هاست! 🔹 در این پروژه یاد می‌گیری: طراحی رابط کاربری…
🚀 ۵ ترفند پایتون که باید بلد باشی!
اینجا ۵ تا ترفند کاربردی پایتون داری که سرعت و تمیزی کدنویسیت رو می‌بره بالا:

1. List Comprehension


2. zip برای ترکیب لیست‌ها


3. Unpacking


4. Lambda Functions


5. معکوس کردن رشته با Slice

# 🔹 ۵ ترفند خفن پایتون 🔹

# 1) List Comprehension: ساخت سریع لیست
squares = [x**2 for x in range(1, 6)]
print(squares) # [1, 4, 9, 16, 25]

# 2) zip: ترکیب چند لیست همزمان
names = ["Ali", "Sara", "Reza"]
scores = [95, 88, 76]
for n, s in zip(names, scores):
print(n, s)

# 3) Unpacking: بازکردن عناصر به چند متغیر
a, b, *rest = [1, 2, 3, 4, 5]
print(a, b, rest) # 1 2 [3, 4, 5]

# 4) Lambda: تابع جمع کوتاه
add = lambda x, y: x + y
print(add(5, 7)) # 12

# 5) Slice معکوس رشته
text = "Python"
print(text[::-1]) # nohtyP


#python #LearnPython@voidcompile
💻@voidcompile
1🏆2118🔥18👍11🤩11💯10
پایتون | هوش مصنوعی | voidcompile
🎯 پروژه باحال پایتونی: ساخت QR Code داینامیک با Python! با این کد حرفه‌ای پایتون، فقط با چند خط ساده می‌تونی یک QR Code تصادفی و منحصر به‌فرد بسازی! از رشته‌های ترکیبی عدد و حرف گرفته تا تنظیمات حرفه‌ای مثل خطایابی سطح بالا، نمایش تصویری و استفاده از کتابخونه‌های…
📲 ساخت QR Code با چند خط کد پایتون!

می‌خوای برای لینک تلگرام، اینستاگرام یا حتی کارت ویزیت دیجیتال خودت QR Code اختصاصی بسازی؟
با کتابخونه‌ی qrcode توی پایتون می‌تونی خیلی راحت این کارو انجام بدی.

🔹 کاربردها:

ساخت QR برای شبکه‌های اجتماعی

استفاده توی وبسایت و اپلیکیشن‌ها

کارت ویزیت دیجیتال


پایتون فقط برای برنامه‌نویسی نیست؛ می‌تونه توی زندگی روزمره هم کلی کمک کنه!

# 🔹 ساخت QR Code با پایتون 🔹
import qrcode

# داده‌ای که می‌خوای داخل QR باشه
data = "https://t.me/VoidCompile"

# ساخت QR
qr = qrcode.make(data)

# ذخیره به صورت فایل تصویری
qr.save("my_qr.png")
print(" QR Code ساخته شد!")

#python #LearnPython@voidcompile
💻@voidcompile
15🤩12👍11🔥11💯4
🔥 ۵ ماژول کمتر شناخته‌شده پایتون که زندگی برنامه‌نویس‌ها را راحت‌تر می‌کنند

1️⃣ "pathlib"
کار با فایل‌ها و پوشه‌ها به روش مدرن و خوانا
from pathlib import Path

for file in Path(".").glob("*.py"):
print(file)

2️⃣ "collections"
ساختمان داده‌های قدرتمند مثل "Counter" و "defaultdict"
from collections import Counter

print(Counter("voidcompile"))

3️⃣ "itertools"
ابزارهای حرفه‌ای برای ترکیب، جایگشت و حلقه‌های پیشرفته
from itertools import permutations

print(list(permutations([1, 2, 3])))

4️⃣ "secrets"
تولید رمزهای تصادفی و امن
import secrets

print(secrets.token_hex(16))

5️⃣ "timeit"
اندازه‌گیری سرعت اجرای کد
import timeit

print(timeit.timeit("sum(range(100))", number=10000))

💡 نکته جالب:
همه این ماژول‌ها به صورت پیش‌فرض داخل پایتون هستند و نیازی به نصب هیچ پکیجی ندارند.

#Python #Programming #Coding

بقیه آموزش های پایتون :
#LearnPython@voidcompile

@voidcompile
122👍14
Python Tip

می‌خواهی بدانی اجرای کدام بخش کدت کند است؟
import time

start = time.perf_counter()

# Your code here

end = time.perf_counter()

print(f"Execution Time: {end - start:.4f} seconds")

اولین قدم برای بهینه‌سازی، اندازه‌گیری است.
#LearnPython@voidcompile

@voidcompile
122👍12
🐢 چه کسی گفته برنامه‌نویسی فقط متن و اعداد است؟

با چند خط کد و کتابخانه Turtle می‌توان الگوهای هندسی و آثار هنری جذابی خلق کرد. ترکیب ریاضیات، رنگ‌ها و کدنویسی گاهی نتایجی خلق می‌کند که بیشتر شبیه هنر هستند تا کد.

شاید یکی از بهترین راه‌ها برای یادگیری حلقه‌ها، توابع و هندسه، همین بازی کردن با Turtle باشد. 🎨
import turtle
import colorsys

screen = turtle.Screen()
screen.bgcolor("black")

pen = turtle.Turtle()
pen.speed(0)
pen.width(2)
pen.hideturtle()

n = 300

for i in range(n):
hue = i / n
pen.pencolor(colorsys.hsv_to_rgb(hue, 1, 1))

pen.circle(i * 0.8)
pen.left(91)

turtle.done()

آموزش های پایتون :
#LearnPython@voidcompile

@voidcompile
3👍177