امروز، دوشنبه ۲ اسفند ۱۴۰۰، جلسه دوم گروه نرمافزار آزاد هرمزگان را با حضور نویسنده این مطلب داشتیم و به پیشنهاد یکی از اعضا، یک بازی جالب کردیم: «به صورت چرخشی در یک دایره هرکس میبایست نام یک ماژول پایتونی، توکار یا غیر توکار، بگوید. نام ماژولها روی تابلو نوشته میشود و کسی حق تکرار اسم یک ماژول را ندارد. کسی که ظرف مدت زمان ۳۰ ثانیه نتوانست اسمی پیدا کند، از بازی خارج میشود و آخرین نفر باقی مانده در بازی برنده است». روشن است که در بازی حق جستجو کردن، نوشتن یا امثالهم را نداشتیم!
<span class="vcard">فاروق کریمیزاده</span>
بنده در دانشگاه هرمزگان دستیار تدریس یا حل التمرین(TA) برنامهسازی پیشرفته هستم. ضمن تصحیح پروژه دانشجویان به اشتباهاتی درست(!) در کد هایشان برخوردم. قسمت درست کدها این میباشد که «کار» میکنند اما به روش درست پایتون نوشته نشدهاند.
به صورت کلی، جنگو و django-admin تلاش میکنند با پیادهسازی پیشفرضهایی که مناسب هستند زندگی توسعهدهنده را آسانتر کنند. در نتیجه یک توسعه دهنده قادر خواهد بود تا یک اپلیکیشن را در زمان بسیار کمی بالا بیاورد. اما او مجبور است به اکثر پیشفرضها بچسبد. البته سفارشیسازی ممکن است اما اغلب تغییر پیشفرضها نیازمند فهمی درست از اتفاقاتی است که پشت صحنه میافتد که میتواند وقتگیر و نیازمند مهارت باشد.
در پایتون ۳.۸ یک عملگر جدید برای انتصاب معرفی شده است.این عملگر جهت انتصاب در عبارات بزرگتر استفاده میشود. مثلا:
a = 10
if (b := a) == 10:
...
در تکه کد بالا همزمان مقدار b برابر مقدار a میشود و هم مقایسه انجام میشود.
در نسخه ۳.۱۰ پایتون یک ویژگی جدید و جالب به زبان اضافه شده است: pattern matching. اگر با سوئیچکیس(switch-case) در زبانهای سی و سیپلاسپلاس کار کردهاید، پترنمچینگ یک نسخه پیشرفتهتر از switch-case ميباشد. در پست «از سوییچکیس تا پترنمچینگ» از روزبه شریفنسب میتوانید در مورد این ساختارها در زبانهای مختلف و تاریخچه آنها بخوانید.
range(end)
range(start, end)
range(start, end, step)
یک شی range در پایتون بسیار شبیه یک لیست از اعداد مرتب است اما توجه کنید که با یک نمونه از کلاس range سروکار دارید و نه یک لیست یا توپل.

بنده قبل از i3 از مدیر پنچرههای رایج استفاده میکردم. به دلیل اینکه مجبور بودم تعداد زیادی پنجره را همزمان مدیریت کنم همیشه مشکل پیدا کردن یک پنجره و مدیریتش را داشتم. خب من مشکل خود را با استفاده از یک مدیر پنجره موزائیکی به اسم آی۳ حل کردم!
اوایل تنها از i3 به همراه i3bar و dmenu استفاده میکردم اما بعدا زوبونتو را نصب کرده و مدیر پنجره پیشفرضش که xfwm باشد را با i3 جایگزین کردم. و به این ترتیب دردسر پیکرهبندی هزار و یک چیز دیگر را نداشتم و در عین حال از i3 استفاده میکردم.

سلام دوستان
چند وقت قبل از انتشار نسخه 41 گنوم دنبال آموزش نصب گنوم 40 روی اوبونتوی 20.04 بودم که نتیجه ای در بر نداشت.
امروز به سرم زد دنبال آموزش نصب گنوم 41 در اوبونتو بگردم که به نتیجه قابل قبولی رسیدم
قبل از آموزش بگم من خودم بهتون پیشنهاد می دم به جای این کار فدورا نصب کنید اما اگه مثل من دستتون بسته بود و کلی نرم افزار داشتید این کار رو انجام بدید
هشدار: اگر در نصب این نسخه از گنوم مردد هستید بدانید که راهکار برگشتی وجود ندارد
خب فرض کنید میخواهید یک فایل حجیم(مثلا ۲.۶ گیگابایت مثل من) را منتقل کنید. مثلا در بستر اینترنت یا اینکه میخواهید از طریق چند حافظه ذخیرهسازی مختلف فایل را جابجا کنید. برای من با اینترنت ADSL حداکثر سرعت آپلود ۵۰ کیلوبایت بر ثانیه هست و علاوه برآن اگر اینترنت ناگهان قطع و وصل شود مجبورم از اول شروع کنم!
راه حلی که برای این موضوع پیدا کردم قطعه قطعه کردن فایل حجیم با split و آپلود قطعات فایل به یک سرور واسط هست. و از سرور واسط به سرور اصلی آپلود میکنم. با اینکار میتوانم از چند دستگاه و با چند ارتباط اینترنت قطعات را آپلود کنم و به نوعی از پهنایباند همه کانکشنهای اینترنت همزمان استفاده کنم تا فایل حجیمی که دارم سریعتر به دست سرور اصلی برسد.

help(int)
کلاس int در پایتون که بعضا آن را با تابع اشتباه میگیرند،برای تبدیل یک متغیر با نوعی جز نوع عدد صحیح به عدد صحیح کاربرد دارد. شما میتوانید با استفاده از int در پایتون یک رشته(string) یا یک عدد اعشاری(float) را به عدد صحیح تبدیل کنید.