python_qa | Unsorted

Telegram-канал python_qa - 🐍 برنامه نویسی پایتون | Python Q/A

5260

@farhad_naserizadeh @farhad3412 فرهاد ناصری زاده تبادل @mmtahmasbi لینک کانال مرتبط : @raspberry_python @c_micro @ai_dsp @micropython_iot @new_mathematical قوانین گروه: https://t.me/python_QA/353760

Subscribe to a channel

🐍 برنامه نویسی پایتون | Python Q/A

بچه ها فایل py رو چجور به exe تبدیل کنم که بعدش حروف فارسی داخله برنامه به علامت سوال تبدیل نشه

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

کسی میدونه صندوق داری باید چیکار کرد

کارش چطوریه

و اینکه حقوقش تو رنجیه

با چه برنامه ای هست

سخته یا اسون

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

اینکه تفاوت خود لینوکس و ویندوز بود( جدا از صحیح/اشتباه بودن )

سوال او بنده خدا
تفاوت کد پایتون در دو سیستم عامل بود

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

برنامه نویس های دات نت: 👀

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

/auth@Joker_group_bot

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

فایلها پاک شدن
دوباره رو یک پروژه دیگه بیار
میگریشن کن

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام. دوستان عزیز وقتتون بخیر.

من به راهنمایی جهت تهیه ی مودم و وبکم نیاز دارم.

میدونم سوالم مرتبط با این گروه نیست.

اما اگر ممکنه توی پی وی بهم راهنمایی بدید.

ممنون میشم.

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

بیا پیوی تا داکیومنت بفرستک

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام دوستان شما می دونید برای شروع پایتون که تو رشته مالی به درد بخوره دوره انلاین خوب یا کلاس کجا هست ؟؟؟یعنی اززکجا شروع کنم خوبه
ممنون میشم راهنمایی کنید

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

ماگریشن اینیشیال رو نباید حدف کنی

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام من یک سوال دارم
می شه پارامترهای fitting مدل رو از یک نرم افزار دیگه محاسبه کنیم و بیایم تو پایتون بگیم برای داده های تست پیش بینی کن؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

Generators

درود. میخواستم درباره ی آبجکت معروف و شناخته شده ی generator حرف بزنیم ولی با نگاه کمی متفاوت تر و به این برسیم که دقیقا چطور کار میکنه و چطور پیداش شد. نیاز هست که کمی حرف های پیش نیاز بزنیم صبور باشید.

قبل از هر چیزی درباره ی خود فانکشن حرف بزنیم ولی نه تو پایتون بلکه تو C:
وقتی یه فانکشنی کال میشه، توی call stack یک frame جدید میاد که برای اون فانکشن هست. این frame شامل تمام متغیر های لوکال و پارامتر های اون فانکشن هست. وقتی فانکشن تموم میشه چه اتفاقی میفته؟
اون frame از stack پاپ میشه(یا دقیق ترش stack pointer کم میشه)
و نکته اینجاس که هرچی که توی اون frame هست دیگه قابل دسترس نیست و اگه استفادشون کنیم undefined behavior هست. چرا؟ چون توی "مموری استک" این frame قرار داده شده بود و اون فضا الان آزاد شده و قابل استفاده هست برای بقیه(توی پرانتز، تو C که مدیریت حافظه نداره، باید آبجکت هایی که توی heap میسازیم رو خودمون مدیریت کنیم نه استک):

int *returnArray() {
int arr[3] = {11, 22, 33};
printf("%p\n", arr);
printf("%d\n", arr[1]);
return &arr;
}
int main(void) {
int *arr;
arr = returnArray();
printf("%p\n", arr);
printf("%d\n", arr[1]); // ???
}

با اینکه آدرسش رو return کردیم ولی باز نمیتونیم به آیتم های لیست دسترسی داشته باشیم.
حالا اینارو گفتم که موضوع مهمی رو بگم اونم اینکه تو پایتون هم همین call stack و اینا هست ولی اون frame object توی heap ساخته میشه. این به این معناس که اگه بخوایم میتونیم ذخیرش داشته باشیمش و همیشه بمونه! مثلا مانع از نابود شدن خودش و آبجکت های درونش بشیم. تو مثال زیر global f رو اگه از کامنت در بیارید obj از بین نمیره چون frame رو ذخیره کردیم:

from gc import collect
from sys import _getframe

class A:
def __del__(self):
print("del called")

def fn():
# global f
f = _getframe(0)
obj = A()

fn()
collect()
input()
خب حالا که اینو گفتیم بریم سراغ خود آبجکت فانکشن تو پایتون. وقتی فانکشن کال میشه یه frame object ساخته میشه. این frame object داخلش آبجکت های زیادی هست(مستقیم یا غیر مستقیم) از جمله رفرنسی داره به متغیر های داخل اون namespace و رفرنسی داره به code object که یک unit عه executable هست. داخل این code object ما bytecode ها رو داریم که همون instruction ها هستن.

درواقع instruction ها هستن که اجرا میشن و این state ذخیره میشه. تو کد زیر lasti یعنی last instruction. (توی cpu هم اتفاق مشابهی میفته. اینجا pvm میخواد بدونه چیو اجرا کرده و حالا نوبت چیه):

from sys import _getframe
def fn():
print(_getframe(0).f_lasti)
a = 10
print(_getframe(0).f_lasti)

fn()

خب حالا بخش جالب ماجرا اینجاس. ما به عنوان طراحان فرضی زبان پایتون، میدونیم که frame ما میتونه خارج از موقع کال شدن هم زنده بمونه + از طرفی به state هم که دسترسی داریم...( اینکه الان متغیر های local چیا هستن، اینکه الان تا instruction چندم اجرا شده و غیره)

فقط یه مشکلی هست، فانکشن های ما وقتی کال میشن از اولین instruction تا آخرینش رو اجرا میکنن و تموم میشن و همه ی آبجکت های داخل اون frame از بین میرن(اگه رفرنس دیگه ای نداشته باشن جای دیگه).

الان همه چیز محیا هست برای اینکه یه ساختار یا keyword جدیدی بیاریم تو زبان که هرجایی از execution فانکشن خواستیم بتونیم pause کنیم و اون رو با هر state ای که داره به حال خودش رها کنیم. بیایم yield رو معرفی کنیم! هروقت yield اومد، کافیه اجرا رو متوقف کنیم و مثل فانکشن ها(که بعد از تموم شدنشون، frame شون از stack frame جدا میشد) این generator ها رو هم frame شون رو جدا کنیم.

بعدا اگه خواسیم generator رو ادامه بدیم و روش next بزنیم(مستقیم خودمون یا غیر مستقیم توسط پایتون) تنها کاری که باید بکنیم اینه که frame ش رو برداریم بچسبونیم به stack frame ممون و از اون state ای که بودیم ادامه بدیم.

def gen():
a = 1
yield
b = 1
yield

g = gen()
next(g)
print(g.gi_frame.f_lasti, g.gi_frame.f_locals)
next(g)
print(g.gi_frame.f_lasti, g.gi_frame.f_locals)

این call stack با linkedlist پیاده سازی شده و frame ها نود های اون هستن. با f_back به frame قبلی اشاره میکنن به راحتی وصل میشن و جدا میشن.

جنریتور ها با وجود سرعت خوبی که دارن، برای سرعت بیشتر ساخته نشدن بلکه برای استفاده ی بهینه تر از مموری ساخته شدن. داشتن همچین آبجکتی(به اضافه ی ساختار هایی مثل yield from) میتونه زمینه ی خیلی چیز ها رو فراهم کنه. از جمله فریموورک هایی مثل asyncio :)

✒️ @AmirSoroushh

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

باز فقط کد ها میاد دیگ او آیکون ها نمیاد

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام کسی نمیدونه این مشکل رو چجور حل کنم داخل هاست پایتون

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

بعد از تغییر کانفیگ باید کار دیگه ای انجام بدم
اخه بعد از ریستارت دستور ulimit -Sn رو زدم به جای 4096 همون 1024 اومد

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

اگر انگلیسیت خوبه توی کانال یوتیوب
vahidaryadoust
دوره اموزش R داره

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

دات نت اوکیه رو لینوکس
البته همه ابزارن
ویندوز واوندلینوکس ساب سیتمش و داکر ک سر هم 8 گیگی میبلعند هم کاملا اماده برای توسعهست

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

داشتم صحبت‌های Tim Peters یکی از پدر‌های پایتون رو میخوندم
الگوریتم timsort رو، روی همین چیزی که دارید می‌کوبیدش تست کرده بود و ویندوز داشت 🤔

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

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

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

/auth@Joker_group_bot

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

گروه پایتونه
سوالتونو تو گروه @blindspots بپرسید

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام
از دوستان کسیR بلده؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

بچه ها کسی هست جنگوکار باشه؟
داخل تست نویسی مشکل دارم
مشکل که نه ، کلا نمی‌فهممش
کسی هست جزوه یا ویدیویی سراغ داشته باشه ک بتونم بخونم یا ببینم؟
ترجیحاً اول زبان فارسی باشه چون انگلیسی داکیومنت خود جنگو هست ولی زیاد باهاش ارتباط نگرفتم

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

اگه امکانش هست اپت رو از اول بساز

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام
من توی جنگو همه مایگریشانای appهامو حذف کردم
حالا که میخوام migrate کنم بهم این خطا رو میده
relation "auth_group" does not exist

باید چیکار کنم؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

دوستان کی از مقاله اطلاعات داره؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام چطوری میتونم از اینا استفاده کنم؟
مثلا چجوری پروژه های بقیه افراد رو دسترسی پیدا کنم بهشون و کار کنم روشون؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام رو یک گزینه hide زدم کل برنامه های اینورش hide شد چیکار کنم؟

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

سلام Arman
لطفا درخواست پروژه خود یا مواردی از این قبیل رو در ربات @DailyProjectsBot بذارید تا در @project_req قرار بگیرد

Читать полностью…

🐍 برنامه نویسی پایتون | Python Q/A

کسی میتونه این آدرس دهی و برای wait for selector اصلاح کنه؟

>CSS> :nth-child(12) > iframe>FRAME> >CSS> #game-core-frame>FRAME> >CSS> :nth-child(1) > button

Читать полностью…
Subscribe to a channel