13517
یادگیری برنامه نویسی، هوش مصنوعی، دیتا ساینس و پروژههای تحقیقاتی Python | Machine Learning | Biopython | C++ | AI مطالب آموزشی ، تحقیقاتی ، پروژه محور و پژوهشی برای علاقه مندان به یادگیری برنامه نویسی برای تبلیغات یا ارسال پیشنهاد: @void_compile
الگوریتمها چطور کار میکنند؟
def sort_thoughts(thoughts):
return sorted(thoughts, key=lambda t: t.clarity)
کد پایتونی :
# find_top_heavy_files.py
# 🔍 Top 10 largest files (recursive) with human-readable sizes
import os, heapq, argparse, math
def human_size(n: int) -> str:
if n <= 0: return "0 B"
units = ["B","KB","MB","GB","TB","PB"]
idx = min(int(math.log(n, 1024)), len(units)-1)
return f"{n / (1024**idx):.2f} {units[idx]}"
def iter_files(root: str):
for base, _, files in os.walk(root):
for name in files:
path = os.path.join(base, name)
try:
size = os.path.getsize(path)
yield (size, path)
except OSError:
continue # دسترسی نداشتیم یا فایل قفل بود
def top_n_files(root: str, n: int = 10):
return heapq.nlargest(n, iter_files(root), key=lambda x: x[0])
if __name__ == "__main__":
p = argparse.ArgumentParser(description="Show top N largest files recursively.")
p.add_argument("path", nargs="?", default=".", help="Root directory (default: current)")
p.add_argument("-n", type=int, default=10, help="How many files to show")
args = p.parse_args()
results = top_n_files(args.path, args.n)
width = max((len(p) for _, pth in results for p in [pth]), default=20)
print(f"📁 Root: {os.path.abspath(args.path)}")
print(f"{'Size':>12} Path")
print("-"*12 + " " + "-"*max(width, 40))
for sz, pth in results:
print(f"{human_size(sz):>12} {pth}")
python find_top_heavy_files.py # از پوشه فعلی
python find_top_heavy_files.py D:\ # مسیر دلخواه ویندوز
python find_top_heavy_files.py / -n 20 # لینوکس/مک، ۲۰ فایل
کاربران فقط نتیجه رو میبینن.
ولی اون چیزی که واقعاً یه برنامه رو «پایدار» میکنه،
کدهاییه که هیچکس نمیبینه.
🧠 معماری، نظم، naming درست، تست و ساختار —
چیزایی که شاید تو خروجی نشون داده نشن،
اما ریشهی کیفیت نرمافزار همونجاست.
✨ برنامهنویس حرفهای، روی چیزایی تمرکز میکنه
که دیگران حتی متوجهش نمیشن.
# You only see this...
def start():
print("Running smoothly!")
# But beneath it...
def structure():
logic = "optimized"
naming = "consistent"
testing = "in place"
return (logic, naming, testing)
وقتی توی کد غرق میشی،
زمان معناشو از دست میده.
صداها محو میشن، افکار آروم میگیرن.
فقط تو میمونی و یه منطق خالص که داره شکل میگیره.
کدنویسی، برای خیلیا شغل یا مهارته
ولی برای بعضیا، یه جور مدیتیشنه.
هر باگ، یه مانع ذهنیه.
هر حل شدنش، یه لحظهی سکوت درونی.
while True:
try:
focus()
build()
learn()
except distraction:
breathe()
continue
Scientific Visualization با پایتون و Matplotlib
یه منبع ناب برای ساخت تصاویر علمی دقیق و جذاب.
نویسنده: Nicolas P. Rougier
چرا باید بخونی؟
• مفاهیم پایه و پیشرفتهی مصورسازی علمی رو به خوبی توضیح داده
• از رنگ، تایپوگرافی، طراحی شکل تا انیمیشن رو در خودش داره
• مثالهای عملی و قابل اجرا + نکات فنی
اگر پروژهای دارید که دادههای علمی داره مثل ژنتیک، هواشناسی، زیستشناسی محاسباتی، فیزیک این کتاب میتونه راهنمایی کنه تا خروجی هات انگار از مجله علمی باشن 🔬📊
💻@voidcompile
😎 یه انیمیشن خفن فقط با چند خط پایتون!
با همین چند خط، یه افکت Loading واقعی توی ترمینال بساز.
میتونی ازش توی پروژههات، بازیهای ترمینالی یا اسکریپتهای CLI استفاده کنی.
📌 نکته: \r باعث میشه خروجی در همون خط بهروزرسانی بشه.
import time, sys
animation = "|/-\\"
for i in range(30):
sys.stdout.write("\rLoading " + animation[i % len(animation)])
sys.stdout.flush()
time.sleep(0.1)
print("\nDone!")
از همون سلام ساده،
یه نسل از ذهنها شکل گرفت،
نسلی که با کد حرف میزنن، با الگوریتم فکر میکنن،
و با داده رؤیا میسازن.
دنیا همیشه با یه "Hello" شروع میشه
مهم اینه تو اون سلام رو بنویسی.
#python
print("Hello, World!")
#JavaScript
console.log("Hello, World!");
#C
#include <stdio.h>
int main(void) {
printf("Hello, World!\n");
return 0;
}
#Java
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
🚀 ترفند پایتون: Transpose در یک خط!
به جای نوشتن حلقههای طولانی، میتونی با استفاده از zip(*list) به راحتی ترنسپوز ماتریس رو بگیری.
این ترفند مخصوصاً توی دیتا ساینس، الگوریتمها و کار با آرایهها فوقالعادهست.
📌 یادت باشه: zip(*matrix) یعنی باز کردن لیست و ترکیب ستونها → تبدیل ردیفها به ستونها.
# لیست دوبعدی
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
# ترنسپوز در یک خط
transposed = list(zip(*matrix))
print(transposed)
# خروجی: [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
⚡️ ترفند f-string در پایتون: دیباگ و فرمت حرفهای در یک خط!
با f"{var=}" میتونی متغیر رو همراه اسمش چاپ کنی و با فرمتدهی مثل :.2f و :,.2f خروجی تمیز بگیری.
برای دیباگ سریع، نمایش قیمت/ارقام مالی و گزارشگیری عالیه.
price, tax = 1299.9, 0.09
total = price * (1 + tax)
print(f"{price=:.2f}, {tax=:.0%}, {total=,.2f}")
# خروجی نمونه: price=1299.90, tax=9%, 1,416.89
🤖🧬 آیندهای که هوش مصنوعی و ژنتیک با هم یکی میشن
هوش مصنوعی داره دنیای ما رو تغییر میده.
حالا تصور کن وقتی این قدرت به بیوانفورماتیک و ژنوم انسان وصل بشه چه اتفاقی میفته:
🔹 تشخیص بیماریها قبل از بروز علائم
🔹 داروهای اختصاصی برای هر فرد (Personalized Medicine)
🔹 بازنویسی ژنوم برای درمان بیماریهای ژنتیکی
📌 آینده علم جاییه که کد پایتون = کد حیات میشه.
تو آمادهای برای این انقلاب؟
#python #genetic
@voidcompile
هوش مصنوعی جدید #گوگل اومد
خیلی خفنه تستش کنید👇
/channel/OPEN_DIGI
👑کار پاره وقت #دانشجویی
❤️ با پایه حقوق ۲۵_۴۰ میلیون تومن
#لینک_عضویت🌟
📎/channel/addlist/vzFJyoErgY82YzQ0
🧬 محاسبه GC Content با پایتون 🐍
یکی از تحلیلهای پایهای در بیوانفورماتیک و ژنتیک مولکولی، محاسبهی درصد G و C توی یک توالی DNA هست.
به این میگن GC Content و کاربردهای زیادی داره:
🔹 بررسی پایداری توالی DNA
🔹 طراحی پرایمر در PCR
🔹 تحلیل ژنومها و مقایسه گونهها
با چند خط کد پایتون میتونی خیلی سریع GC Content هر توالی رو حساب کنی!
# 🔹 محاسبه GC Content در یک توالی DNA 🔹
def gc_content(dna):
g = dna.count("G")
c = dna.count("C")
gc = ((g + c) / len(dna)) * 100
return round(gc, 2)
dna_seq = "ATGCGTATCGGATC"
print(f"GC Content: {gc_content(dna_seq)}%")
# خروجی: GC Content: 53.33%
🧬 DNA با پایتون: شمارش نوکلئوتیدها 🐍
میدونستی میتونی با پایتون دادههای زیستی رو هم آنالیز کنی؟
این یه مثال سادهست: شمارش A, T, C, G در یک رشته DNA.
🔹 کاربرد این کار چیه؟
تحلیل توالی ژنی (Genomics)
بررسی جهشها و SNPها
پایهای برای پروژههای بیوانفورماتیک
پایتون توی ژنتیک و بیوانفورماتیک ابزار فوقالعاده قدرتمندیه.
📌 این کد رو تست کن و ببین چهقدر ساده میتونی با دادههای زیستی کار کنی!
# 🔹 شمارش نوکلئوتیدها در یک رشته DNA 🔹
def count_bases(dna):
return {
"A": dna.count("A"),
"T": dna.count("T"),
"C": dna.count("C"),
"G": dna.count("G")
}
dna_seq = "ATGCGTATCGGATC"
print(count_bases(dna_seq))
# خروجی: {'A': 4, 'T': 3, 'C': 3, 'G': 4}
🚀 ۵ کتابخونه ضروری پایتون برای شروع هوش مصنوعی
اگه میخوای وارد دنیای AI و یادگیری ماشین بشی، این کتابخونهها باید همیشه توی جعبهابزارت باشن:
1️⃣ NumPy → پایهی محاسبات عددی
2️⃣ Pandas → تحلیل و مدیریت دادهها
3️⃣ Matplotlib → ترسیم نمودارها
4️⃣ Scikit-learn → الگوریتمهای ML آماده
5️⃣ TensorFlow / PyTorch → غولهای یادگیری عمیق
🔹 با این ۵ تا میتونی اولین پروژههای هوش مصنوعی و ML خودت رو شروع کنی.
📌 کد رو سیو کن تا همیشه دم دستت باشه!
# 1. NumPy → پایه ریاضی و ماتریسها
import numpy as np
arr = np.array([1, 2, 3])
print(arr * 2)
# 2. Pandas → مدیریت دادهها
import pandas as pd
data = pd.DataFrame({"Name": ["B", "A"], "Score": [90, 85]})
print(data)
# 3. Matplotlib → ترسیم نمودار
import matplotlib.pyplot as plt
plt.plot([1,2,3],[2,4,6])
plt.show()
# 4. Scikit-learn → الگوریتمهای یادگیری ماشین
from sklearn.linear_model import LinearRegression
# 5. TensorFlow / PyTorch → یادگیری عمیق و شبکههای عصبی
import torch
print(torch.tensor([1.0, 2.0, 3.0]))
✔️ دوستان برای دسترسی راحت تر شما کانالها و گروههایی که لازمتون میشه رو تو یه فولدر گذاشتیم.
⭐️ این فولدر رو به تلگرامتون اضافه کنید، اینجوری دیگه بین انبوه آموزشها و گروهها سردرگم نمیشید و هر سوالی که واسه کامپیوتر و طراحی سایت و برنامه نویسی و شبکه نیاز دارید میتونید بپرسید.
🔹 حتی میتونید جزوهها دانشگاهیتو هم از اینجا بردارید.
📥 با زدن دکمه Add این فولدر به تلگرام شما اضافه میشود. 👇👇
➡️🔗 /channel/addlist/nWUDBA0h0zNkMTg0
🚀 Top 10 فایلِ سنگین سیستم با پایتون!
با این اسکریپت، از هر مسیر دلخواه، سنگینترین فایلها رو پیدا کن و فضا آزاد کن.
بدون نصب کتابخونه
خروجی مرتب و خوانا (MB/GB)
مناسب ویندوز/مک/لینوکس
📌 کد رو سیو کن، آخر هفتهها اجراش کن و سیستم رو سبک نگه دار!
کد را در پست بعدی قرار دادم😁
@voidcompile
هر قانون فیزیک،
هر تپش قلب،
هر الگوی ستارهها
همه از منطقی پیروی میکنند.
جهان روی یک «سینتکس» اجرا میشود که هنوز کامل نمیفهمیمش.
شاید فیزیک، سورسکُدِ هستی باشد.
و شاید وقتی کُد مینویسیم،
داریم به همان زبانی حرف میزنیم
که واقعیت را ساخته است.
def universe():
constants = ["gravity", "light", "time", "entropy"]
while True:
evolve(constants)
Scientific Visualization: Python + Matplotlib
#pdf@voidcompile
#book@voidcompile
💻@voidcompile
👨💻 خیلیا فکر میکنن «برنامهنویس بهتر شدن» یعنی یاد گرفتن زبانهای بیشتر.
اما واقعیت؟
بیشتر شبیه یه طرز تفکره تا یه مهارت فنی.
🔹 اینا چند تا نکتهان که واقعاً فرقی بزرگ میسازن:
1️⃣ کد کمتر، فکر بیشتر.
بهجای نوشتن ۱۰۰ خط کد، راهحل ۵ خطی پیدا کن.
2️⃣ بفهم چی داری مینویسی.
قبل از گوگل کردن، یه دقیقه فکر کن چرا ارور گرفتی.
3️⃣ مرتب بنویس.
کدی که امروز تمیز مینویسی، فردا نجاتت میده.
4️⃣ بفهم چرا نه فقط چطور.
زبانها عوض میشن، ولی منطق میمونه.
5️⃣ به یادگیری عادت کن.
برنامهنویس واقعی کسیه که هیچوقت از یاد گرفتن خسته نمیشه.
📌 یادت باشه: یه برنامهنویس خوب کد نمینویسه،
🔹 مسئله حل میکنه.
💻@voidcompile
نسل جدید هوش مصنوعی برای کدنویسی
امروز شرکت Anthropic از مدل جدیدش رونمایی کرد: Claude Sonnet 4.5
🔹 این مدل میتونه بهصورت خودکار تا ۳۰ ساعت کد تولید کنه.
🔹 پروژههایی در حد ۱۱,۰۰۰ خط کد رو مدیریت و کامل میکنه.
🔹 تمرکز ویژه روی عاملهای خودران (Autonomous Agents) داره.
این یعنی چی برای ما برنامهنویسا؟
کارهای تکراری رو به AI میسپریم.
تمرکز ما روی خلاقیت و معماری میره بالا.
سرعت توسعه پروژهها چند برابر میشه.
📌 اما یه سؤال بزرگ:
آیا این یعنی برنامهنویسا به زودی جایگزین میشن؟ یا این ابزار فقط دستیار ماست؟
#claude
💻@voidcompile
🧬 DNA یا کد پایتون؟
هر دو چیزی مشترک دارن:
هر دو رشتهای از کاراکترها هستن.
هر دو میتونن اطلاعات رو ذخیره و منتقل کنن.
هر دو میتونن ساختارها و سیستمهای زنده (بیولوژیکی یا دیجیتال) بسازن.
📌 حالا سوال مهم:
به نظرت آیندهای میرسه که مرز بین کدنویسی و ژننویسی از بین بره؟
# DNA → کد حیات
DNA = "ATGCGTACGTAG"
# Python → کد منطقی
code = "print('Hello World')"
print("هر دو رشتهای از کاراکترها هستن...")
⏳ tqdm: سادهترین Progress Bar برای پایتون
با tqdm میتونی هر حلقهای رو به نوار پیشرفت تبدیل کنی—بدون دردسر!
کاربردها: پردازش دیتا، آموزش مدلهای ML، دانلود فایل، وباسکرپینگ و…
مزیتها:
اضافهشدن فقط با پیچیدن روی iterable
واحد و توضیح دلخواه (unit, desc)
پشتیبانی از آپدیت دستی برای طول ناشناخته
کد رو سیو کن و تو پروژههات استفاده کن ✌️
# نصب (فقط یکبار): pip install tqdm
from tqdm import tqdm
import time
# 1) حلقهی ساده
for _ in tqdm(range(100), desc="Processing"):
time.sleep(0.01)
# 2) شمارش روی لیست با توضیح و واحد
files = ["a.csv", "b.csv", "c.csv"]
for f in tqdm(files, desc="Reading", unit="file"):
time.sleep(0.2)
# 3) بهروزرسانی دستی (برای طول ناشناخته)
pbar = tqdm(total=0, desc="Streaming", unit="kb")
for chunk_kb in [5, 12, 8, 20]:
time.sleep(0.1)
pbar.total += chunk_kb
pbar.update(chunk_kb)
pbar.close()
🚀 ۳ فانکشن پایتون که باید بلد باشی!
1️⃣ reverse_item → معکوس رشته یا لیست
2️⃣ flatten → باز کردن لیستهای تو در تو
3️⃣ is_palindrome → چک کردن کلمههای پالیندروم
🔹 این فانکشنها سادهان ولی توی کدنویسی روزمره خیلی به کارت میان.
📌 سیو کن، چون مطمئناً لازمت میشه!
# 1. معکوس کردن هر چیزی
def reverse_item(x):
return x[::-1]
# 2. فلت کردن لیست تو در تو
def flatten(lst):
return [i for sub in lst for i in sub]
# 3. چک کردن پالیندروم
def is_palindrome(word):
return word == word[::-1]
print(reverse_item("VoidCompile"))
print(flatten([[1,2],[3,4]]))
print(is_palindrome("radar"))
🔑 ساخت پسورد فوقامن با پایتون 🐍
این کد یه رمز کاملاً رندوم و غیرقابل حدس میسازه که حتماً شامل:
✔️ یه حرف بزرگ
✔️ یه حرف کوچیک
✔️ یه عدد
✔️ یه سمبل خاص
📌 از این میتونی برای حسابهای مهم یا حتی پروژههای امنیتی استفاده کنی.
👉 پیشنهاد: طول رو بذار 24 یا 32 تا فوقالعاده امن بشه.
import secrets, string
def strong_password(length=16):
if length < 4:
raise ValueError("Password length must be at least 4")
# گروههای کاراکترها
upper = secrets.choice(string.ascii_uppercase)
lower = secrets.choice(string.ascii_lowercase)
digit = secrets.choice(string.digits)
symbol = secrets.choice("!@#$%^&*_-")
# بقیهی کاراکترها رندوم
alphabet = string.ascii_letters + string.digits + "!@#$%^&*_-"
rest = [secrets.choice(alphabet) for _ in range(length - 4)]
# ترکیب و شافل
pwd_list = list(upper + lower + digit + symbol + ''.join(rest))
secrets.SystemRandom().shuffle(pwd_list)
return ''.join(pwd_list)
print(strong_password(16))
ورود تمام دانشجویان و افراد جویای
کار الزامیست 🌟🌟
📎/channel/addlist/xhQCtq1E81M2NmE0
🌀 ماشینِ خیالی؛ شکستن قوانین کدنویسی!
🔹 تصور کن یه دستگاه فرضی وجود داشته باشه که بتونه قوانین علوم کامپیوتر رو زیر پا بذاره.
🔹 مثلا ماشینی که مرتبسازی (Sorting) رو به جای O(n log n)، توی زمان O(1) انجام بده! 😳
🔹 یا الگوریتمی که محدودیتهای حافظه و سرعت رو کاملاً نادیده بگیره و جواب رو مثل جادو روی صفحه بریزه.
🛠 این ایدهها بیشتر شبیه طراحیهای ذهنی لئوناردو داوینچی هستن؛ ترکیبی از تخیل، ریاضیات و کدنویسی.
🌌 شاید هیچوقت چنین ماشینی واقعی نشه، اما همین بازی با مرزهای محاسبات باعث میشه دیدمون نسبت به ساختار الگوریتمها عمیقتر بشه.
#mpossibleMachine
#Algorithm
💻@voidcompile
📲 ساخت QR Code با چند خط کد پایتون!
میخوای برای لینک تلگرام، اینستاگرام یا حتی کارت ویزیت دیجیتال خودت QR Code اختصاصی بسازی؟
با کتابخونهی qrcode توی پایتون میتونی خیلی راحت این کارو انجام بدی.
🔹 کاربردها:
ساخت QR برای شبکههای اجتماعی
استفاده توی وبسایت و اپلیکیشنها
کارت ویزیت دیجیتال
پایتون فقط برای برنامهنویسی نیست؛ میتونه توی زندگی روزمره هم کلی کمک کنه!
# 🔹 ساخت QR Code با پایتون 🔹
import qrcode
# دادهای که میخوای داخل QR باشه
data = "/channel/VoidCompile"
# ساخت QR
qr = qrcode.make(data)
# ذخیره به صورت فایل تصویری
qr.save("my_qr.png")
print("✅ QR Code ساخته شد!")
🚀 ۵ میانبر ترمینال که زندگیتو عوض میکنه!
اگه اهل لینوکس، مک یا حتی WSL ویندوز باشی، این میانبرها میتونن سرعت کدنویسی و مدیریتت رو چند برابر کنن:
1️⃣ Ctrl+R → جستجوی سریع دستورهای قبلی
2️⃣ Ctrl+A → رفتن به اول خط
3️⃣ Ctrl+E → رفتن به آخر خط
4️⃣ Ctrl+U → پاک کردن کل خط
5️⃣ Ctrl+K → پاک کردن از مکاننما تا آخر خط
🔹 با همین ۵ میانبر ساده، کار با ترمینال برات خیلی راحتتر و حرفهایتر میشه.
Ctrl + R → جستجوی دستورات قبلی (History Search)
Ctrl + A → رفتن به اول خط
Ctrl + E → رفتن به آخر خط
Ctrl + U → پاک کردن کل خط
Ctrl + K → پاک کردن از مکاننما تا آخر خط
پایتون vs جاوا: کد کدوم کوتاهتره؟
با یک مثال ساده (فیبوناچی) میبینی پایتون چقدر کد رو کوتاه و خوانا مینویسه، درحالیکه جاوا با نوعدهی و ساختار صریح، کنترل بیشتری میده.
نتیجه؟ اگر میخوای سریع نمونهسازی کنی و اسکریپت بزنی، پایتون انتخاب خوبیه. اگر پروژهی بزرگ و استاندارد سازمانی داری، جاوا میدرخشه.
پایتون :
# Fibonacci up to n
n = int(input("n: "))
a, b = 0, 1
while a <= n:
print(a, end=" ")
a, b = b, a + b
import java.util.Scanner;
public class Fib {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("n: ");
long n = sc.nextLong();
long a = 0, b = 1;
while (a <= n) {
System.out.print(a + " ");
long next = a + b;
a = b;
b = next;
}
sc.close();
}
}