میخوام در پایتون به ابتدای اعداد تک رقمی، یک 0 اضافه شود
(برای نشان دادن ساعت کاربرد دارد)
برای این کار میتوانید از تابع zfill استفاده کنید. این تابع یک رشته را به عنوان ورودی دریافت میکند و به آن تعدادی صفر در ابتدای رشته اضافه میکند تا طول رشته به تعداد دلخواه برسد. برای اضافه کردن یک صفر به ابتدای اعداد تک رقمی، میتوانید به صورت زیر عمل کنید:
python
number = 5
number_str = str(number).zfill(2)
print(number_str)
در اینجا، عدد 5 به صورت رشته با استفاده از str تبدیل شده و سپس با استفاده از zfill یک صفر در ابتدای رشته (چون طول رشته فقط 1 است) قرار داده شده است.
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤3 2 2 1 1
روز برنامه نویسو به همه عزیزان تبریک میگم❤️ 😘
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥5 5 4❤3 2
پروژه تست سرعت تایپ (ترمینال) ⌨️ 👩💻
🐍
🎁 @DevLosso
کد اینجوریه که ی جمله رندوم از لیست میده و اونو باید تایپ کنید بعد نتیجه بهتون میگه
import time, random
sentences = [
"Python is amazing!",
"Typing speed test is fun.",
]
text = random.choice(sentences)
print(f"Type the following sentence as fast as you can:\n")
print(f"{text}\n")
start = time.time()
typed = input("Your Input: ")
end = time.time()
time_taken = end - start
accuracy = sum(a == b for a, b in zip(text, typed)) / len(text) * 100
wpm = len(typed.split()) / (time_taken / 60)
print(f"\n Time: {time_taken:.2f} sec")
print(f" Accuracy: {accuracy:.2f}%")
print(f" Words per minute: {wpm:.2f} WPM")
Please open Telegram to view this post
VIEW IN TELEGRAM
1 6 4 3🔥2 2
حملهMan-in-the-Middle" (MitM) یعنی اینکه یک نفر بهطور مخفیانه بین دو طرف که به هم ریکوئست ارسال میکنند، قرار میگیرد و میتواند مکالمات یا اطلاعات آنها را ببیند یا حتی تغییر دهد.🥷
⚪️ چطور این حمله کار میکند؟
🔤 . شنود: مهاجم میتواند بهراحتی به صحبتهای دو نفر شنود کند و اطلاعات مورد نیازش را بدزدد.
⚡️ . تغییر اطلاعات: مهاجم میتواند پیامها را عوض کند. مثلاً ممکن است پیام شما به دوستتان را تغییر دهد تا چیزی که نمیخواهید بفرستید، ارسال شود.
⚡️ . جعل هویت: مهاجم میتواند خود را بهجای یکی از طرفین جا بزند و با طرف دیگر صحبت کند.
⚪️ چطور این حمله انجام میشود؟
🔴 شبکههای Wi-Fi عمومی: مثلاً در کافیشاپ، کسی میتواند یک شبکه Wi-Fi جعلی بسازد و شما را فریب دهد که به آن متصل شوید.
🔴 تغییر آدرسها: در شبکههای محلی، مهاجم میتواند آدرسهای دستگاهها را عوض کند تا ترافیک شما به سمت او بیفتد.
🔴 تبدیل HTTPS به HTTP: مهاجم میتواند ارتباط امن شما را به ارتباط غیرامن تبدیل کند.
⚪️ چطور از این حملات جلوگیری کنیم؟
1️⃣ . استفاده از HTTPS: همیشه به وبسایتهایی بروید که آدرس آنها با HTTPS شروع میشود. این یعنی اطلاعات شما رمزگذاری شده است.
2️⃣ . استفاده از VPN: اگر از اینترنت استفاده میکنید، یک VPN کمک میکند تا اطلاعات شما امنتر باشد.
3️⃣ . اجتناب از شبکههای عمومی: اگر میتوانید، از اتصال به Wi-Fi عمومی خودداری کنید.
4️⃣ . بررسی گواهینامهها: مطمئن شوید وبسایتهایی که به آنها وارد میشوید، معتبر هستند.
🔛 @DevLosso
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤5 3 3👍2 1
ماشین حساب برای محاسبه معدل 📝
کد پایتونیه✅
🗣 @DevLosso
کد پایتونیه
#average calculator
def grade_calculator():
print("📚 Grade Calculator")
grades_input = input("Enter your grades separated by commas (e.g. 18, 15.5, 20): ")
try:
grades = [float(g.strip()) for g in grades_input.split(",")]
average = sum(grades) / len(grades)
highest = max(grades)
lowest = min(grades)
status = "✅ Passed" if average >= 10 else "❌ Failed"
print("\n📊 Grade Summary:")
print(f"🔹 Average: {average:.2f}")
print(f"🔹 Highest: {highest}")
print(f"🔹 Lowest: {lowest}")
print(f"🔹 Status: {status}")
except:
print("⚠️ Invalid input. Please enter numbers separated by commas.")
grade_calculator()
Please open Telegram to view this post
VIEW IN TELEGRAM
🙏4 4❤2👌2 2
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤5 3 3 2 1
این عکس باحال خروجی کد زیره 🐆 📞
⭐️ @DevLosso
n = 8
for i in range(n):
print(" " * (n-i), end=" ")
for j in range(i+1):
if i % 2 == 0:
print("*", end=" ")
else:
print(j+1, end=" ")
print()
Please open Telegram to view this post
VIEW IN TELEGRAM
matplotlib 🍆 🐍
🔥 @DevLosso
خب دوستان این سوال اینجوریه که ورودی اعداد از کاربر میگیره و به صورت نمودار بزرگترین اعداد بین اون ورودیارو نشون میده
import matplotlib.pyplot as plt
from colorama import Fore , init
init()
def max_num():
user_input = input(Fore.GREEN + "Please enter your numbers for example(x y x y): " + Fore.BLUE).strip()
nums = [float(x) for x in user_input.split()]
if not nums:
print(Fore.YELLOW + "List is empty")
return
max_val, max_idx = max((val, idx) for idx, val in enumerate(nums))
plt.figure(figsize=(7, 3))
bars = plt.bar(range(len(nums)), nums, color='green')
bars[max_idx].set_color('red')
plt.title(f"Max: {max_val} at index {max_idx}", fontsize=15)
plt.xlabel("Indices", fontsize=13)
plt.grid(True, alpha=0.5)
plt.tight_layout()
plt.show()
max_num()
Please open Telegram to view this post
VIEW IN TELEGRAM
1 7 4🔥3 2 1
تصویر بالا تفاوت ساختاری جی پی یو و سی پی یو را نمایش می دهد.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6 5🔥3 1 1
Forwarded from ساخت دکمه شیشه ای
This media is not supported in your browser
VIEW IN TELEGRAM
🖥صفحه لاگین نوشته شده با: HTML , CSS , JS
شما میتونید به صورت رایگان سورس این صفحه دریافت کنید😎
Code: 7bf56298
@DevLosso
@DevLossoUp_bot
شما میتونید به صورت رایگان سورس این صفحه دریافت کنید😎
Code: 7bf56298
@DevLosso
@DevLossoUp_bot
1 7 4 3❤🔥2 2
اگه دنبال یه نرم افزار خوب، سبک , و صد البته اپن سورس برای انتقال فایل تو شبکه 💻 داخلی هستین LocalSend رو جدا پیشنهاد میکنم
بدون هیچ دردسر اضافی یا تنظیمات خاصی
نسخه لینوکس😁 ، ویندوز 🪟 و حتی اندروید 📱 هم داره
💎 @DevLosso
بدون هیچ دردسر اضافی یا تنظیمات خاصی
نسخه لینوکس
http://localsend.org
Please open Telegram to view this post
VIEW IN TELEGRAM
پروژه تشخیص شرکت سیمکارت🔣
دوستان اگر ایده ای داشتید خوشحال میشم بگید💔
💎 @DevLosso
دوستان اگر ایده ای داشتید خوشحال میشم بگید
#shomare
from colorama import init, Fore, Style
init()
hamrahaval = ['0910', '0911', '0912', '0913', '0914', '0915', '0916', '0917', '0918', '0919', '0990', '0991', '0992', '0993', '0994', '0903']
irancell = ['0930', '0933', '0935', '0936', '0937', '0938', '0939', '0900', '0901', '0902', '0903', '0904', '0905', '0941']
ritel = ['0920', '0921', '0922', '0923']
attempts = 10
while attempts > 0:
phone = input(f"Enter your phone number ({attempts} attempts left): ")
if len(phone) != 11 or not phone.isdigit():
print(Fore.RED + "❌ Invalid phone number." + Style.RESET_ALL)
else:
prefix = phone[:4]
if prefix in hamrahaval:
print(Fore.GREEN + f"✅ The number [{phone}] belongs to Hamrah Aval." + Style.RESET_ALL)
elif prefix in irancell:
print(Fore.GREEN + f"✅ The number [{phone}] belongs to Irancell." + Style.RESET_ALL)
elif prefix in ritel:
print(Fore.GREEN + f"✅ The number [{phone}] belongs to RighTel." + Style.RESET_ALL)
else:
print(Fore.BLUE + f"The number [{phone}] is not recognized in known operators." + Style.RESET_ALL)
attempts -= 1
print("All attempts completed")
Please open Telegram to view this post
VIEW IN TELEGRAM
import calendar
print("calendar generator")
year = int(input("Enter year (for exmple 2025): "))
month = int(input("Enter month (1-12): "))
print(f"Calendar for {month}/{year}:\n")
print(calendar.month(year, month))
Please open Telegram to view this post
VIEW IN TELEGRAM
▫️اگه موقع کدنویسی تو VS Code، شلوغی صفحه و ابزارهای اضافی حواست رو پرت میکنن، حالت Zen دقیقاً همون چیزیه که نیاز داری!
▫️با فعالکردن این حالت، همه نوارها و منوهای اضافی مخفی میشن و فقط کدها جلوی چشمت هستن. اینجوری میتونی بدون هیچ مزاحمتی روی کدات تمرکز کنی. برای فعالسازی حالت Zen، مسیر زیر رو دنبال کن:
View -> Appearance -> Zen Mode
یا از میانبرهای زیر استفاده کن:
+ با این کار، VS Code به حالت تمامصفحه میره و فقط ویرایشگر کد رو نمایش میده. برای خروج از حالت Zen، کافیه کلید Esc رو فشار بدی.
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤7 5 3🔥2 2 1
دوستان اگر ایده ای دارید خوشجال میشم بگید
def find_primes(n):
if n <= 2:
return []
primes = [True] * n
primes[0], primes[1] = False, False
for i in range(2, int(n ** 0.5) + 1):
if primes[i]:
for j in range(i * i, n, i):
primes[j] = False
return [i for i, val in enumerate(primes) if val]
number = 123456789
print(find_primes(number))
اینجوریم میتونید بنویسید
primes[0] = primes[1] = False
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤6 4 4 3 1
واقعیت پنهان: PHP-FPM اغلب گلوگاه (bottleneck) اصلی اپلیکیشن های PHP است، نه Nginx!
بسیاری از تیم ها با دیدن خطای 502 یا 504، انگشت اتهام را به سمت Nginx می گیرند. اما در اغلب موارد، مشکل از کانفیگ نادرست PHP-FPM (FastCGI Process Manager) است.✅
PHP-FPM چگونه کار می کند؟
به زبان ساده:
هر Worker فقط یک درخواست را در لحظه پردازش می کند.
وقتی Worker آزاد نباشد، درخواست های جدید وارد یک صف (Queue) می شوند.
اگر این صف پر شود، خطای 502 Bad Gateway یا 504 Gateway Timeout رخ می دهد.
تنظیمات حیاتی برای عملکرد بهینه
1⃣ مدیریت Concurrency بر اساس RAM، نه CPU
بزرگ ترین اشتباه، تنظیم max_children بر اساس تعداد هسته های CPU است. مصرف حافظه (RAM) هر Worker، عامل محدودکننده اصلی است.
فرمول صحیح:
max_children = (Total RAM for Pool) / (Avg RAM per Child)
2⃣ انتخاب Process Manager (pm) مناسب
dynamic: بهترین گزینه برای اپلیکیشن های وب و API با ترافیک متغیر.
ondemand: ایده آل برای سرورهای کم ترافیک و با حافظه محدود.
static: فقط برای سرورهایی با بار کاری کاملاً پایدار و قابل پیش بینی.
3⃣ حفاظت از منابع سرور
request_terminate_timeout: برای توقف خودکار اسکریپت های سرکش (runaway).
request_slowlog_timeout: برای شناسایی و لاگ گیری درخواست های کند و پیدا کردن گلوگاه ها.
pm.max_requests: برای جلوگیری از نشت حافظه (memory leak) در بلندمدت با ریستارت کردن Workerها.
4⃣ بهینه سازی OPcache
OPcache اولین و مهم ترین خط دفاعی شما برای بهبود پرفورمنس است. همیشه حداقل ۲۰٪ از حافظه آن را آزاد نگه دارید. بدون OPcache، سرور شما به یک کارخانه کامپایل مجدد کد تبدیل می شود!
مطالعه موردی (اپلیکیشن Laravel با 8GB RAM)
حافظه تخصیص داده شده به PHP-FPM: 6GB
میانگین حافظه مصرفی هر Worker: ~120MB
محاسبه max_children: 6000MB / 120MB = 50 (برای اطمینان روی 44 تنظیم شد)
نتیجه: پایداری کامل در تست بار 120 RPS و حذف کامل خطاهای 502.
جمع بندی
مشکل از PHP-FPM نیست، بلکه از کانفیگ های پیش فرض و کپی شده است. با درک صحیح مدیریت حافظه، صف ها و OPcache، می توان به عملکردی پایدار و قابل پیش بینی دست یافت.
گام بعدی: اگر ماهیت کار شما (مانند پردازش های طولانی مدت یا real-time) با معماری FPM سازگار نیست، ابزارهایی مانند RoadRunner یا Swoole را بررسی کنید.
آیا تجربه ای در زمینه خطاهای ناشی از کانفیگ نادرست PHP-FPM داشته اید؟ راه حل شما چه بوده است؟
⚡️ @DevLosso
بسیاری از تیم ها با دیدن خطای 502 یا 504، انگشت اتهام را به سمت Nginx می گیرند. اما در اغلب موارد، مشکل از کانفیگ نادرست PHP-FPM (FastCGI Process Manager) است.
PHP-FPM چگونه کار می کند؟
به زبان ساده:
هر Worker فقط یک درخواست را در لحظه پردازش می کند.
وقتی Worker آزاد نباشد، درخواست های جدید وارد یک صف (Queue) می شوند.
اگر این صف پر شود، خطای 502 Bad Gateway یا 504 Gateway Timeout رخ می دهد.
تنظیمات حیاتی برای عملکرد بهینه
بزرگ ترین اشتباه، تنظیم max_children بر اساس تعداد هسته های CPU است. مصرف حافظه (RAM) هر Worker، عامل محدودکننده اصلی است.
فرمول صحیح:
max_children = (Total RAM for Pool) / (Avg RAM per Child)
dynamic: بهترین گزینه برای اپلیکیشن های وب و API با ترافیک متغیر.
ondemand: ایده آل برای سرورهای کم ترافیک و با حافظه محدود.
static: فقط برای سرورهایی با بار کاری کاملاً پایدار و قابل پیش بینی.
request_terminate_timeout: برای توقف خودکار اسکریپت های سرکش (runaway).
request_slowlog_timeout: برای شناسایی و لاگ گیری درخواست های کند و پیدا کردن گلوگاه ها.
pm.max_requests: برای جلوگیری از نشت حافظه (memory leak) در بلندمدت با ریستارت کردن Workerها.
OPcache اولین و مهم ترین خط دفاعی شما برای بهبود پرفورمنس است. همیشه حداقل ۲۰٪ از حافظه آن را آزاد نگه دارید. بدون OPcache، سرور شما به یک کارخانه کامپایل مجدد کد تبدیل می شود!
مطالعه موردی (اپلیکیشن Laravel با 8GB RAM)
حافظه تخصیص داده شده به PHP-FPM: 6GB
میانگین حافظه مصرفی هر Worker: ~120MB
محاسبه max_children: 6000MB / 120MB = 50 (برای اطمینان روی 44 تنظیم شد)
نتیجه: پایداری کامل در تست بار 120 RPS و حذف کامل خطاهای 502.
جمع بندی
مشکل از PHP-FPM نیست، بلکه از کانفیگ های پیش فرض و کپی شده است. با درک صحیح مدیریت حافظه، صف ها و OPcache، می توان به عملکردی پایدار و قابل پیش بینی دست یافت.
گام بعدی: اگر ماهیت کار شما (مانند پردازش های طولانی مدت یا real-time) با معماری FPM سازگار نیست، ابزارهایی مانند RoadRunner یا Swoole را بررسی کنید.
آیا تجربه ای در زمینه خطاهای ناشی از کانفیگ نادرست PHP-FPM داشته اید؟ راه حل شما چه بوده است؟
Please open Telegram to view this post
VIEW IN TELEGRAM
As a world-renowned writer with seven years of experience and numerous published books, you have been tasked with writing a book consisting of 10 chapters, each chapter containing 5 sub-chapters. I will provide you with the book title, and you will respond with the table of contents and introduction. Then, you will ask me if I agree with the table of contents. If I say yes, you will begin writing chapter 1. If I say no, you will revise the table of contents accordingly.
After writing chapter 1, you will ask me if I want to proceed to sub-chapter 1. If I say yes, you will begin writing sub-chapter 1. Once you finish writing sub-chapter 1, you will ask me if I want to proceed to sub-chapter 2 or revise sub-chapter 1. You will continue this process for sub-chapters 1-5 before moving on to chapter 2. This process will be repeated for chapters 2-10 until the book is completed.
The book title is موضوع کتاب یا مقاله
Please open Telegram to view this post
VIEW IN TELEGRAM