آموزش برنامه نویسی پایتون بخش یازدهم (تبدیل نوع و گرد کردن)


جدول تناوبی تحلیل های مکانی در GIS

معرفی هفت منبع داده اقلیمی رایگان جهانی

چرخش قطبی در مقابل چرخش خورشید آهنگ

آنالیز تصویر شئی گرا (OBIA)

تعامل انرژی در سنجش از دور : انعکاس، جذب و گسیل انرژی

معرفی 6 منبع رایگان داده های لیداری

آشنایی با SAR با استفاده از مثال

برنامه لندست : 50 سال آرشیو از تصاویر سطح زمین

دانلود رایگان نرم افزار ArcGIS Pro 2.8

ابر نقطه ای چیست ؟

انواع نقشه ها در سیستم اطلاعات جغرافیایی: 25 روش مختلف و جذاب برای نمایش داده های مکانی در GIS

تصحیحات اتمسفری در سنجش از دور چیست ؟

سیستم های تصویر نقشه چیست ؟ و چرا بعضا برای ما گمراه کننده هستند ؟

ژئودزی: ریاضیات مکان

گیرنده های GPS چگونه کار می کنند ؟ سه گانه سازی در مقابل مثلث بندی

مأموریت توپوگرافی رادار شاتل (SRTM)

چرا پنجره اتمسفری در علوم زمین دارای اهمیت است ؟

تصاویر ماهواره ای DigitalGlobe: وردویو(Worldview)، ژئوآی(GeoEye) و آیکونوس (IKONOS)

راهنمای طبقه بندی نزدیکترین همسایه در e-Cognition

نقشه های کروپلت – مقدمه ای بر طبقه بندی داده

تصاویر چند طیفی (Multi-spectral) در مقایسه با تصاویر ابر طیفی (Hyper-spectral)

فتوگرافی هوایی (Aerial Photography) در مقابل ارتوفوتوگرافی (Orthophotography)

راهنمای جامع لیدار (Light Detection and Ranging – LiDAR)

سنجش از دور چیست ؟

منابع داده GIS رایگان در سطح جهانی : داده های رستری و برداری

مقدمه ای بر سرویس های نقشه کشی تحت وب (WMS)

علم داده مکانی چیست ؟

تحلیل عوارض سه بعدی

ژئوانالیتیکس: آنالیز داده های مکانی حجیم

فرمت های داده در سیستم اطلاعات جغرافیایی بخش سوم

فرمت های داده در سیستم اطلاعات جغرافیایی بخش دوم

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

آموزش برنامه نویسی پایتون بخش سی ام

انتشار نخستین تصاویر لندست 9 توسط سازمان هوا و فضای آمریکا (NASA)

آموزش برنامه نویسی پایتون بخش بیست و نهم

آموزش برنامه نویسی پایتون بخش بیست و هشتم

آموزش برنامه نویسی پایتون بخش بیست و هفتم

آموزش برنامه نویسی پایتون بخش بیست و ششم

آموزش برنامه نویسی پایتون بخش بیست و پنجم

معرفی سامانه WEB GIS


آموزش برنامه نویسی پایتون بخش یازدهم
تبدیل نوع و گرد کردن در پایتون
اگر یکی از عملوندهای مربوط به یک اپراتور عدد اعشاری باشد، نتیجه نهایی از این عبارت نیز یک عدد اعشاری خواهد بود.
آیا می توان عملیات های باینری که دارای دو عملوند هستند را با نوع-داده های مختلفی انجام داد ؟ جواب به این پرسش بله است. در زبان برنامه نویسی پایتون این امکان وجود دارد. در صورتی که یک داده از نوع عدد صحیح . داده دیگری از نوع اعشای در عملیات باینری دخالت داده شوند، پایتون به صورت خودکار عدد صحیح را به مقدار اعشاری تبدیل می کند. به این وضعیت در زبان پایتون تبدیل نوع داده یا Type Conversion گفته می شود. در نتیجه نتیجه عبارت 3 * 4.5 دقیقا معادل با عبارت 3.0 * 4.5 در نظر گرفته می شود. در مواقعی ممکن است که شما تنها نیاز به بخش صحیح نتیجه محاسبه داشته باشید در این صورت می توانید از تابع int() استفاده نموده و نتیجه عبارت را به صورت عدد صحیح دیافت کنید. به مثال زیر توجه کنید :
>>> value = 13.98
>>> int( value)
13
>>>
توجه داشته باشید که در این حالت عدد گرد نمی شود بلکه به نزدیک ترین عدد صحیح و کوچکتر از خودش تبدیل می شود. در پایتون امکان گرد کردن عدد اعشای به سمت بالا نیز وجود دارد در صورتی که عدد اعشاری دارای بخش اعشاری بیش از 0.5 باشد می توان آن را به سمت عدد صحیح بزرگتر از خودش نیز گرد نمود. برای این منظور در پایتون تابعی وجود دارد که این امکان را برای ما فراهم می آورد. به مثال زیر توجه کنید.
>>> value = 13.98
>>> round ( value)
14
>>>
نکته
تابع int و round مقدار متغیر را تغییر نمی دهند. به عنوان مثال در صورتی که از این توابع استفاده شود مقدار اولیه متغیر همچنان همان مقدار اولیه باقی خواهد ماند. به مثال بعد توجه کنید :
>>> value = 5.6
>>> round(value)
6
>>> value
5.6
>>>
تابع Int در مقابل تابع eval در پایتون
تابع int را می توان برای تبدیل یک رشته عددی از نوع صحیح یا Int به یک عدد صحیح واقعی استفاده نمود. برای مثال تابع int(“34”) مقدار عددی 34 از با نوع داده integer را بر می گرداند. در نتیجه می توانید از تابع eal و یا int بای تبدیل رشته از نوع کاراکترهای عددی به عدد صحیح استفاده کنید. اکنون سوالی که مطرح می شود آن است که کدام روش بهتری است ؟ در صورتی که تابع int به سادگی این تبدیل را انجام می دهد. پاسخ آن است که در مواردی که برای تبدیل نوع رشته ای به صورت رشته ای اعشاری باشد تابع Int با خطا متوقف می شود در صوتی که تابع eval به درستی کار می کند. در نتیجه برای تبدیل مقدار رشته ای “35.856” به یک عدد صحیح در صورتی که از تابع int استفاده کنید دچار خطای نحوی خواهید شد در صورتی که اگر از تابع eal استفاده کنید این مشکل بر طرف می شود. راهکار دیگر آن است که از تابع float ابتدا استفاده نموده و سپس از تابع int استفاده کنیم. نکته دیگر آن است که تابع eval تنها برای تبدیل نوع مورد استفاده قرار نمیگیرد بلکه عبارات محاسباتی که به صورت رشته ای باشند نیز مورد ارزیابی قار می گیرند و نتیجه به درستی اعلام می گردد. مثال با استفاده از تابع eal می توانید نتیجه عبارت رشته ای “3 + 7” که برابر با 10 می باشد را محاسبه کنید بدون آنکه با خطای گرامری رو به رو شوید. نکه دیگر آن است که تابع eval در محاسبه عبارت “003” دچار خطا می گردد در صورتی که تابع int به درستی کار خواهد کرد.
>>> int (“12”)
12
>>> int (“12.5”)
Traceback (most recent call last):
File “<pyshell#1>”, line 1, in <module>
int(‘12.5’)
ValueError: invalid literal for int() with base 10: ‘12.5’
>>> eval (“12.5”)
12.5
>>> int (“12 + 5”)
Traceback (most recent call last):
File “<pyshell#2>”, line 1, in <module>
int (“12 + 5”)
ValueError: invalid literal for int() with base 10: ’12 + 5′
>>> eval (“12 + 5”)
17
>>> eval (“005”)
Traceback (most recent call last):
File “<pyshell#1>”, line 1, in <module>
eval (“005”)
File “<string>”, line 1
005
^
SyntaxError: leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers
>>> int(“005”)
5

سیکل توسعه نرم افزار

روش نصب نرم افزار Arc GIS Pro 2.8

روش های ترانسفورم (Transformation) مختصاتی در نرم افزار ArcGIS Pro

نرم افزار Coordinate to Map V.1 برای ترسیم عوارض برداری نقطه ای، خطی و پلیگونی بر اساس اطلاعات نقطه ای برداشت شده در عملیات نقشه برداری

مدلسازی سایه-اندازی ساختمان ها در چشم اندازهای شهری در نرم افزار ArcGIS Pro

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه شاهرخت به شماره NI-41-9

آموزش برنامه نویسی پایتون بخش بیست و یکم

آموزش صفر تا صد ترسیم نقشه های توپوگرافی حرفه ای در نرم افزار Arc GIS

آموزش برنامه نویسی پایتون بخش شانزدهم

آموزش برنامه نویسی پایتون بخش دهم (اپراتورهای انتساب گمارشی)

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه دریاچه هامون به شماره NH-41-5

دانلود نرم افزار ArcGIS Pro 3.0.2

نقشه های موقعیت سیاسی منطقه مطالعاتی بخش اول

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه زاهدان به شماره NH-41-9

نقشه های پوششی زمین شناسی ایران در مقیاس 1:100000 بخش سوم

آموزش برنامه نویسی پایتون بخش بیستم

سیستم مختصات، واژه شناسی و مفاهیم در سیستم اطلاعات جغرافیایی

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه مشهد به شماره NJ-40-16

آموزش برنامه نویسی پایتون بخش چهاردهم

روش نصب نرم افزار ArcGIS Pro 3.0.2

برنامه نویسی پایتون بخش هشتم (انتساب چندگانه، ثابت ها، نوع-داده های عددی و اپراتورها)

فیلم آموزشی زمین مرجع یا ژئورفرنس لایه ها و داده های مکانی در نرم افزار Global Mapper

ترکیب باند: تبدیل تصاویر سیاه – سفید به تصاویر رنگی

دانلود و روش نصب نرم افزار Surfer 24

نقشه تقسیمات سیاسی ایران

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه نره نو به شماره NH-41-14

ابزارهای برنامه نویسی (Programming Tools)

آموزش برنامه نویسی پایتون بخش پنجم

نرم افزار Coordinate Format Changer V.1 برای تبدیل فرمت مختصات

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه سرخس به شماره NJ-41-13

روش نصب نرم افزار Envi 5.6

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه گازیک به شماره NI-41-13

نقشه متوسط دمای سطح زمین ایران (LST)

نقشه های پوششی زمین شناسی ایران در مقیاس 1:100000 بخش ششم

دانلود نقشه راههای ایران استایل 4

نقشه های پوششی زمین شناسی ایران در مقیاس 1:100000 بخش پنجم

دانلود نقشه راههای ایران استایل 2

نرم افزار Terrain Morphometer V.1 برای اجرای آنالیز مورفومتری از مدل رقومی ارتفاعی

آموزش برنامه نویسی پایتون بخش سوم (محاسبات ریاضی، استایل و خطاها در برنامه نویسی)

دیدگاهتان را بنویسید