{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Veri tipi Dönüşümleri\n", "Pythonda ve diğer çoğu programlama dilinde veritiplerinin birbirine dönüştürülmesi oldukça önemlidir. Bazı zaman bir ondalıklı sayıyı tamsayıya dönüştürme, hatta ve hatta bir string'i tamsayıya dönüştürme işlemleri programlarımızı yazarken büyük önem taşır. Bu konuda bu tür dönüşümlerini öğrenmeye çalışacağız.\n", "\n", "### Tamsayıyı Ondalıklı Sayıya Çevirme\n", "\n", "Bir tamsayı değeri(integer) ondalıklı sayıya(float) çevirmek için *float()* fonksiyonunu kullanabiliriz.Örneklere bakalım.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "43.0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Çevireceğimiz sayıyı parantez içine alıyoruz.\n", "a = 43\n", "float(a)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-1.0" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "float(-1)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "9.0" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "float(9)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ondalıklı Sayıyı Tamsayıya Çevirme\n", "\n", "Bir ondalıklı sayıyı tamsayıya çevirmek için *int()* fonksiyonunu kullanabiliriz.Sonuç, ondalıklı sayının tam kısmı olarak karşımıza çıkacak.Örneklere bakalım.\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "4" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int(4.7)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int(3.14)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "10" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int(10.3435435345345345)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 4\n", "b = 2\n", "int(a/b)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sayıları Stringlere Çevirme\n", "\n", "Bir sayıyı string'e çevirmek için *str()* fonksiyonunu kullanabiliriz.Sayıyı oluşturan tüm rakamlar veya noktalar birer karaktere dönüşecek.\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'32324324'" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 32324324\n", "b = str(a)\n", "b" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "8" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(b)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'3.14343'" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t = 3.14343\n", "y = str(t)\n", "y" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "7" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Stringleri Tamsayıya Çevirme\n", "\n", "Bir string'i bir tamsayıya çevirmek istediğimiz zaman *int()* fonksiyonunu kullanabiliriz. Ancak biraz dikkatli olmamızda fayda var. Dönüştürme işlemini yaparken stringin herbir karakterinin bir *rakam* olduğundan emin olmalıyız. Örneklere bakalım.\n", "\n" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "32434324324234" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Doğru\n", "a = \"32434324324234\"\n", "b = int(a)\n", "b" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "ename": "ValueError", "evalue": "invalid literal for int() with base 10: 'dasdasd343435'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;31m# Hatalı\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0ma\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34m\"dasdasd343435\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mb\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[0mb\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: invalid literal for int() with base 10: 'dasdasd343435'" ] } ], "source": [ "# Hatalı - Her bir karakterin 10'luk tabanda olması gerekli.\n", "a = \"dasdasd343435\"\n", "b = int(a)\n", "b" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Stringleri Ondalıklı Sayıya Çevirme\n", "\n", "Bir string'i bir ondalıklı sayıya çevirmek istediğimiz zaman *float()* fonksiyonunu kullanabiliriz. Ancak biraz dikkatli olmamızda fayda var. Dönüştürme işlemini yaparken stringin ondalıklı sayı formatına uygun olduğundan emin olmalıyız. Örneklere bakalım.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.1444545" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Doğru Kod\n", "a = \"3.1444545\"\n", "b = float(a)\n", "b" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "ename": "ValueError", "evalue": "could not convert string to float: '3.14.324324'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;31m# Hatalı Kod\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0ma\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34m\"3.14.324324\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mb\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mfloat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[0mb\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: could not convert string to float: '3.14.324324'" ] } ], "source": [ "# Hatalı Kod\n", "a = \"3.14.324324\"\n", "b = float(a)\n", "b" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "İşte bu kadar ! Daha sonra öğreneceğimiz veri tiplerini de bu yöntemlerle birbirine dönüştürebileceğiz." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.1" } }, "nbformat": 4, "nbformat_minor": 2 }