BİLGİ SAYAMIYORUM beta

Python da bir yazı öğesi (string), bir sayıya (int) ya da tarih öğesine (datetime) nasıl dönüştürülür ya da tam tersi?

0

Çeviri (parse) işlemlerini yapmak Python dahilinde çoğunlukla fazlasıyla kolay. Diyelim numara adında string olan bir değeriniz var. Bunu integer olan yeniNumara adlı değere şu şekilde dönüştürebiliyorsunuz, bunu test etmek için de sayı olan 2 ile topladım:

numara = "16012018"
yeniNumara = int(numara) + 2
print(yeniNumara)

Benzer bir şekilde bu değişkeni tekrar string e çevirmek isterseniz, bunu test etmek için sayının yanına " - son hali!!!" yazısını ekledim. print fonksiyonu ile her aşamada sonuçları görebilirsiniz:

enSonNumara = str(yeniNumara) + " - son hali!!!"
print(enSonNumara)

Buna daha önce değinmiştim: "Python da bir sayı listesindeki sayıları alıp art arda koyarak yeni bir sayı nasıl yapılır?" Şimdi de bu string listesi nasıl int listesine dönüştürülür ona bakalım, zira yine aynı taktiği uyguluyoruz, parse ve map işlemini birlikte kullanıyoruz:

veriler = ['16', '01', '2018']
verilerYeni = list(map(int, veriler))
print(verilerYeni)

Diyelim bir yazı (string) olan bir içeriği uygun şekilde tarih (datetime) formatına çevirmek istiyorsunuz, o tarihi fonksiyona parametre olarak koyarken hangi düzende koyduğunuzu gösteren bir dizi parametre daha girmeniz gerekiyor, "gün ay yıl saat:dakika" olarak girdim gibi:

from datetime import datetime
tarih = datetime.strptime('16 Jan 2018 18:30PM', '%d %b %Y %I:%M%p')

Tarihin alınma şeklini sondaki parametreler ile kısaltmanız sadece date almanız da mümkün, ayrıca işlemin tersini de "datetime.strftime()" metoduyla yapabilirsiniz

BENZER 7

Kimse etkileşime girmemiş

ETİKETLER