کرم های کامپیوتر





قالب وبلاگ در حال ویرایش شدن!

ممکن است اشکالاتی در قالب پیش بیاید
بنابراین پیشاپیش متاسفیم!

کرم های کامپیوتر

من و دوستم دو تا کرمیم که داریم تو سیستم ها وُل می خوریم و بعضی وقت ها براتون چیزایی که تو این وُل خوردن ها یاد گرفتیم رو می نویسیم!!!!!

تبلیغات

لاگ بندرعباس راه افتاد!

برای اطلاعات بیشتر به وبلاگ لاگ مراجعه کنید.
نویسنده وبلاگ ما شوید

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

ربات تلگرامی ما
نویسندگان
آخرین نظرات
  • ۱۴ تیر ۹۸، ۱۵:۴۶ - فرهاد حسن پور
    ali boood.

۱۹ مطلب با موضوع «آموزش :: برنامه نویسی :: پایتون» ثبت شده است

complex(real_part=0, imag_part=0)
complex(str)

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

  • فاروق کریمی زاده
os.urandom(n)

تابع os.urandom تعداد n بایت تصادفی برمیگرداند که برای مصارف رمزنگاری و دیگر کاربرد‌ها که اعداد تصادفی با کیفیت‌تر نیاز دارند مناسب است

  • فاروق کریمی زاده

این توابع از توابع توکار پایتون هستند و همانطور که از اسمشان مشخص است، یک عدد مبنای ده را به یک رشته که حاوی آن عدد در مبنای ۸،۱۶ یا ۲ است تبدیل میکند. فکر نمیکنم نیاز به توضیح زیادی داشته باشند اما توجه کنید که این توابع یک رشته برمیگردانند. چند مثال:

>>> hex(10)
'0xa'
>>> oct(13)
'0o15'
>>> bin(12)
'0b1100'

مطالب مرتبط:

  • فاروق کریمی زاده

در زبان پایتون، تابع input از ورودی استاندارد(که بصورت پیشفرض و معمولا صفحه کلید است) تا زمانی که به نویسه‌ی خط جدید نرسیده میخواند و یک رشته(نوع str) با حذف خط جدید برمیگرداند.استفاده از آن بصورت زیر است:

input(prompt='')

prompt یک رشته است که به عنوان یک پیام به کاربر نمایش داده میشود و از کاربر میخواهد تا چیزی وارد کند، در صورتی که ذکر نشود،رشته‌ای خالی است(یعنی چیزی نمایش داده نمیشود). یک مثال:

name = input('What is your name?')
print('Hi,', name)

فراموش نکنید که تابع یک رشته برمیگرداند و در صورت نیاز باید آنرا به عدد و غیره تبدیل کنید.

مطالب مرتبط:

  • فاروق کریمی زاده

اندی پیش به این فکر میکردم که چطور میتوانم حجم یک پرونده را بدست بیاورم و زیر کاپوت این توابع چه چیزی پنهان است.

برای بدست آوردن حجم یک پرونده، البته بدون توجه به فایل‌سیستم و سیستم‌عامل میتوانیم به این صورت عمل کنیم: اول پرونده را باز میکنیم، سپس اشاره‌گر پرونده را به آخرین بایت آن انتقال میدهیم(معمولا تابعی به اسم seek یا مشابه وجود دارد)، حالا مکان اشاره‌گر را نسبت به اول پرونده بدست می‌آوریم(معمولا تابعی به اسم tell وجود دارد). حجم پرونده را به بایت بدست آورده‌ایم.

  • فاروق کریمی زاده

range در پایتون

۰۶
فروردين
range([start,]end)
range(start, end[, step])

تابع range در زبان پایتون یک بازه از اعداد صحیح از start تا end-1 بر میگرداند و در صورتی که start ذکر نشود،بصورت پیشفرض ۰ است.step نیز مشخص میکند که فاصله‌ی اعدادی از هم چقدر باشد و بصورت پیشفرض ۱ هست.

  • فاروق کریمی زاده
enumerate در واقع یک کلاس هست و کاربردش زمانیست که بخواهید روی یک لیست(یا هر مخزن دیگر) پیمایش کنید و علاوه بر اعضای لیست، شماره‌ی آنها در لیست را نیز داشته باشید.
enumerate(myList) = (0, myList[0]), (1, myList[1]), (2, myList[2]), ...
سینتکس کلی بصورت زیر هست:
enumerate(myContainer, [start])

و در حلقه‌ی for میتوانید به این صورت ازش استفاده بکنید :

for enum, value in enumerate(myContainer, [start]):
loop_statments

start شماره‌ی شروع را مشخص میکند و بصورت پیشفرض برابر با صفر قرار داده میشود. این تکه کد عناصر یک لیست را دو برابر میکند(روش بهتری هم برای دو برابر کردن عناصر یک لیست وجود دارد، اما  این یک مثال است):

myList = [1, 2, 3, 4, 5]
for index, value in enumerate(myList):
myList[index] = value * 2

این هم یک کد دیگر به همراه خروجی:

myList = [2, 3, 4, 5]
for i, v in enumerate(myList, -1):
print(i, v)

خروجی:

-1 2
0 3
1 4
2 5

مطالب مرتبط:

  • فاروق کریمی زاده

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

#!/usr/bin/python3
'''
HexView.Py - A simple File Viewer in Hexadecimal format.
Author: FarooqKZ
Under GPL3+. THIS SOFTWARE COMES WITH NO WARRENTY FROM MAIN AUTHOR.
'''

import sys # I inlcude this to use sys.exit() and sys.argv

def showhelp(): # this function shows usage of program
    print("Usage: hexview.py file_path\n\tfile_path: Path of file to view.");
    sys.exit()

if '-h' in sys.argv: #shows help if something like this passed to program: 'hexview.py -h'
    showhelp()

path = sys.argv[1]
filestream = None
fbytes = None

try:
    filestream = open(path,'br') # Open the file in Binary mode for Reading(br)
    fbytes = filestream.read() # Read all bytes from the file 
finally:
    if filestream:
        filestream.close()

rown = 0 
print('')
for b in fbytes:
    s = hex(b).upper()
    s = s.replace('0X','')# "0XBA" => "BA"

    if len(s) == 1: 
        print('0', end='')
    print(s, end=' ')

    rown += 1
    if (rown % 27) == 0:
        print('')

print("\n") # prints 2 newline

پیوند تکه کد در گیت هاب گیست ( برای دریافت به اینجا بروید)

  • فاروق کریمی زاده

در این قسمت آموزش خواندن یک فایل متنی و همچنین ایجاد و نوشتن یک فایل متنی را مطالعه میکنید.

  • فاروق کریمی زاده

الگوریتم های مرتب‌سازی آن دسته از الگوریتم هایی هستند که برای مرتب‌سازی یک مجموعه از اعداد و یا حروف و یا اسامی(با توجه به اینکه هر حرف یک ارزش عددی دارد) استفاده میشود.در این مطلب الگوریتم مرتب‌سازی حبابی- که از ساده‌ترین الگوریتم های مرتب‌سازی استمورد بررسی قرار میگیرد.

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

  1. در یک دور پیمایش جابجایی صورت نگیرد.یعنی در آن دور عددی پیدا نشود که از عدد بعدی خود بزرگتر(یا بصورت نزولی کوچکتر) باشد و جایش با عدد بعدی عوض نشود.
  2. روش دوم که روش من درآوردی است(خودم ساختمش!) این است که یک تابع جدا بنویسید که یکبار مجموعه را از اول تا آخر پیمایش کند و اگر عددی پیدا نشد که از عدد بعدیش بزرگتر باشد پس فهرست‌ما مرتب است.
روش پیشنهاد شده روش اول است.
  • فاروق کریمی زاده

در زبان پایتون جدا از توابع آماده‌ای که برای این کار وجود دارد این روش نیز روش جالبیست.

def FileExist(path):
    try:
        open(path)
    except:
        return False
    else:
        return True

  • فاروق کریمی زاده

پایتون یکی از زبان های برنامه نویسی قدرتمند و در عین حال ساده است و برای مبتدیان و تازه‌واردان به دنیای برنامه نویسی نیز گزینه خوبیست.این اسلاید شو بصورت نکته وار و سریع و آسان پایتون را آموزش میدهد. این اسلاید‌شو فقط روی سینتکس زبان مانور میدهد و کتابخانه های پایتون را مانند os،string،socket و ... را آموزش نمیدهد.


حجم: 1.11 مگابایت

مطالب مرتبط:

  • فاروق کریمی زاده

دستور if یکی از دستورات برنامه نویسی اصلی و پر کاربرد هست که داخل همه زبان‌ها وجود دارد.دستور if در فلوچارت یک مربع است که 45 درجه چرخیده و مانند یک لوزی شده است.

دستور if فقط یک کار انجام میدهد.شما به آن شرطی میدهید و در صورت درست بودن شرط دستور(ات) را اجرا میکند.و اگرنه مجموعه‌ای دیگر از دستورات را اجرا میکند.

  • فاروق کریمی زاده

مفسر پایتون

مفسر پایتون یک برنامه کوچک(برای ویندوز 19 مگابایت و برای لینوکس کمتر)است که میتوانید با آن اسکریپت نویسی پایتون را انجام دهید. میتوانید یک پایتون اسکریپت(با پسوند py) را اجرا کرده یا مستقیما کد هارا آزمایش کنید یا از این مفسر توضیحاتی در مورد یک دستور بخواهید و ...

اولین اسکریپت های شما

برنامه Hello World

اسم این عبارت معروف را شنیده اید؟!وقتی صحبت از این برنامه در دنیای برنامه نویسی میشود(Hello World Program)، منظور برنامه ای است که در آن زبان(مثلا سی پلاس پلاس) عبارت Hello World را در خروجی بچاپد (:

شاید معنی این عبارت "سلامی از طرف برنامه نویس به دنیای آن زبان" باشد.

اما بعد برگردیم سر اصل مطلب.برنامه Hello world در پایتون این است:

print('Hello World!')
بله به همین سادگی! print یکی از توابع توکار(builtin) پایتون است.در پرانتز و بین دو ' یا دو " یا دو """  ، متنی که باید در خروجی نمایش داده میشود قرار میگیرد.اما فرق آن سه چیست؟ ' و " زمانی استفاده میشوند که بخواهیم یک رشته(متن) معمولی و تک خطی را نمایش دهیم یعنی رشته(متن) ما نهایتا یک خط دارد هر چند که ممکن است در خط فرمان یا ویرایشگر ها آن را در چند خط نمایش دهد اما رشته ما در هر صورت یک خط دارد.اما مورد سوم یعنی """ زمانی استفاده میشود که بخواهیم رشته را چند خطی کنیم.تعدادی مثال:
print('Hello World!')# Single Line
print("Hello World!")# Single Line
print("""
Hello
World!
""")
برنامه ای که به کاربر سلام میکند
این برنامه نام کاربر را از او پرسیده و سپس با نامش به او سلام میکند.
برای اینکار برنامه ما باید کار های زیر را به ترتیب انجام دهد:
  1. چاپ پیغامی مبتنی بر اینکه کاربر باید نام خود را وارد کنید
  2. گرفتن چیزی که کاربر وارد میکند و سپس قرار دادن آن در یک متغیر
  3. چاپ پیغامی که در آن به کاربر سلام میکند و نامش را صدا میزند.

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

name = input('What\'s your name? ')
print('Hello', name)
توضیح کد بالا: با دستور input همزمان پیغامی به کاربر داده میشود و بعد کاربر باید متنی را وارد کند و کلید ENTER را بزند.متن وارد شده توسط کاربر در متغیر name ذخیره میشوند.سپس دستور print آنرا به همراه متن 'Hello' چاپ میکند.

توضیحی در مورد دستور input: این دستور متنی را برای کاربر نمایش داده و از او یک متن را میگیرد و آنرا برمیگرداند.این متن یک متغیر string است و برای استفاده عددی از آن باید آنرا تبدیل کنید.

برنامه بالا را میتوان فشرده تر کرد:
print('Hello', input('What\'s your name? '))
محاسبه مساحت یک دایره
این برنامه شعاع دایره را از کاربر دریافت کرده و سپس مساحت آنرا برایش نمایش میدهد.کد برنامه:
r = int(input('Enter R. : ')
pi = 3.1415
print('S:',r*r*pi)
توضیح دستور int: دستور int هرچی بهش بدی به عدد تبدیل میکنه!چیزی که دستور input بهمون میده فقط یک رشته هست.برای اعمل محاسبات باید آنرا به عدد تبدیل کنیم.
عملگر *: داخل برنامه نویسی به * و + و - و ... عملگر گفته میشه.اینها یکسری بلایا رو سر متغیر ها یعنی عملوند ها در میارند.در برنامه بالا این عملگر یعنی * دو متغیر عددی رو در هم ضرب میکنه.
اجرای برنامه ها
برای اجرای این برنامه ها دو راه دارید:

راه اول: مفسر پایتون رو که در ویندوز یک فایل EXE هست و در لینوکس با دستور python داخل خط فرمان اجرا کنید و تک تک دستورات را داخلش بنویسید و اجرا کنید.این راه پیشنهاد نمیشود چون به محض زدن ENTER آن دستور اجرا شده و فرصتی برای بررسی کد و خطایابی و غیره وجود ندارد.

راه دوم این است که دستورات را در یک ویرایشگر متنی وارد کرده و نهایتا با فرمت py یعنی فرمت اسکریپت های پایتون ذخیره کنید و با دستورات زیر در خط فرمان سیستم عامل خود اجرا کنید:
ویندوز:
path_of_python path_of_pythonscript
C:\Python\Python.exe C:\Hello.py
گنو/لینوکس:
python path_of_script
python '/home/faroogh/desktop/hello.py'
در ضمن پایتون خیلی آسون تر از اون چیزیه که فکر میکنید.نترسید خودم ظرف 1 هفته(البته کمی بیشتر) یاد گرفتم.حالا فرض کنیم حتی اگه شما خدایی نکرده عقب مونده هم باشید دیگه نباید بیشتر از 1 یا 2 ماه طول بکشه.
  • فاروق کریمی زاده

int در زبان پایتون نام یک کلاس است که کاربرد های مختلفی دارد.int مخفف integer به معنی عدد صحیح است.

  • فاروق کریمی زاده