Yazılım etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Yazılım etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

1 Ağustos 2025 Cuma

Yapay Zeka Destekli Görüntü İşleme: Python ile OpenCV Kullanımı

Giriş: Yapay Zeka ve Görüntü İşleme Neden Önemli?

Son yıllarda yapay zeka ve görüntü işleme teknolojileri, hayatımızın birçok alanında devrim yaratmıştır. Özellikle Python programlama diliyle birlikte kullanılan OpenCV kütüphanesi, hem amatörler hem de profesyoneller için erişilebilir ve güçlü bir araç seti sunar. Bu makalede, Python ve OpenCV kullanarak temel görüntü işleme işlemlerini nasıl gerçekleştireceğinizi detaylarıyla anlatacağım.

OpenCV Nedir ve Neden Tercih Edilmeli?

OpenCV (Open Source Computer Vision Library), açık kaynak kodlu ve C++, Python gibi dillerle uyumlu bir kütüphanedir. Görüntü ve video analizi, yüz tanıma, nesne tespiti, hareket analizi gibi birçok ileri seviye işlemi kolayca yapmanızı sağlar. Python ile birlikte kullanıldığında, kod yazımı hem daha pratik hem de daha okunabilir hale gelir. Ayrıca, geniş topluluk desteği sayesinde karşılaşılan sorunlara hızlıca çözüm bulunabilir.

Kurulum: Python ve OpenCV Kurulumu Nasıl Yapılır?

İlk olarak bilgisayarınızda Python yüklü değilse, Python'un resmi web sitesinden uygun sürümü indirip kurmalısınız. Ardından, OpenCV kütüphanesini yüklemek için terminal veya komut istemcisine aşağıdaki komutu yazabilirsiniz:

pip install opencv-python

Kurulum işlemi tamamlandıktan sonra, artık temel görüntü işleme işlemlerine geçmeye hazırsınız.

Temel Görüntü Okuma ve Görüntü Gösterme

Bir görüntüyü okumak ve ekranda göstermek için aşağıdaki Python kodunu kullanabilirsiniz:

import cv2
img = cv2.imread('resim.jpg')
cv2.imshow('Goruntu', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Bu kodda, 'resim.jpg' adlı dosyanızın aynı dizinde olduğundan emin olun. cv2.imshow fonksiyonu ile görüntü bir pencere üzerinde gösterilir. cv2.waitKey(0) fonksiyonu, bir tuşa basılana kadar pencerenin açık kalmasını sağlar.

Görüntü İşleme: Griye Dönüştürme ve Kenar Algılama

Görüntüyü gri tonlamalı hale getirmek için aşağıdaki kodu kullanabilirsiniz:

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow('Gri Goruntu', gray)

Kenar algılama işlemi için ise Canny algoritmasını deneyebilirsiniz:

edges = cv2.Canny(gray, 100, 200)
cv2.imshow('Kenarlar', edges)

Bu işlemler sayesinde, resminizdeki temel hatları ve detayları kolayca ortaya çıkarabilirsiniz. Özellikle nesne tespiti veya OCR gibi uygulamaların ön adımlarında bu teknikler oldukça kullanışlıdır.

Pratik Öneriler ve İleri Seviye Uygulamalar

OpenCV ile yalnızca temel işlemler yapmakla kalmaz, aynı zamanda yüz tanıma, hareket takibi, nesne tespiti gibi ileri uygulamalar da geliştirebilirsiniz. Bunun için Python ile makine öğrenmesi algoritmalarını birleştirmek oldukça etkilidir. Örneğin, hazır olarak sunulan Haar Cascade sınıflandırıcıları ile gerçek zamanlı yüz tespiti gerçekleştirebilirsiniz.

Ayrıca, OpenCV'nin mobil ve gömülü sistemlerde de çalışabilmesi sayesinde, akıllı ev sistemlerinden güvenlik kameralarına kadar birçok alanda kullanımı mümkündür. Sürekli gelişen yapısı ve topluluk desteği ile gelecekte de en popüler görüntü işleme araçlarından biri olmaya devam edecektir.

Sonuç: Neden OpenCV ile Başlamalısınız?

Eğer görüntü işleme ve yapay zeka alanında kendinizi geliştirmek istiyorsanız, Python ile OpenCV kullanımı mükemmel bir başlangıç noktasıdır. Temelden ileri seviyeye kadar birçok uygulamayı kolayca geliştirebilir, projelerinizi hızla hayata geçirebilirsiniz. Özellikle Python'un sade sözdizimi ve OpenCV'nin geniş fonksiyon yelpazesi birleştiğinde, hayalinizdeki birçok projeyi gerçeğe dönüştürmeniz mümkün olacaktır.

Unutmayın, teknoloji sürekli gelişiyor ve güncel kalmak için yeni araçları keşfetmek büyük bir avantaj sağlar. OpenCV ile ilk adımı atarak siz de bu alanda söz sahibi olabilirsiniz.

16 Temmuz 2025 Çarşamba

Python ile Web Scraping: Güvenli ve Etkili Veri Toplama Yöntemleri

Python ile Web Scraping Nedir?

Günümüzde internette yer alan verilerin büyük bir kısmı, çeşitli analizler ve projeler için kullanılmak isteniyor. Web scraping, yani web kazıma, internet sitelerindeki verileri otomatik olarak çekmek ve analiz etmek için kullanılan bir yöntemdir. Python, sunduğu güçlü kütüphaneler sayesinde web scraping işlemlerinde en çok tercih edilen programlama dillerinden biridir. Bu yazıda, Python ile web scraping’in temellerini, güvenliğini ve etkili kullanım yöntemlerini ele alacağız.

Web Scraping için Gerekli Kütüphaneler

Python ile web scraping yaparken en çok kullanılan kütüphaneler arasında Requests ve BeautifulSoup yer alır. Requests, internetten veri çekmek için kullanılırken, BeautifulSoup ise HTML ve XML dökümanlarını kolayca ayrıştırmaya yarar. Ayrıca, dinamik içeriklerle çalışmak için Selenium gibi tarayıcı otomasyon araçlarından da faydalanmak mümkündür.

Öncelikle, bu kütüphaneleri kurmak için aşağıdaki komutları kullanabilirsiniz:

pip install requests beautifulsoup4 selenium

Temel Bir Web Scraping Örneği

Basit bir örnek üzerinden ilerleyelim. Diyelim ki bir haber sitesindeki başlıkları çekmek istiyorsunuz. Bunun için öncelikle Requests ile sayfanın HTML içeriğini alıp, ardından BeautifulSoup ile çözümleyebilirsiniz.

Örnek kod:

import requests
from bs4 import BeautifulSoup

url = 'https://www.ornekhaber.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
basliklar = soup.find_all('h2', class_='haber-baslik')
for baslik in basliklar:
  print(baslik.text)

Yukarıdaki kodda, belirtilen URL’den sayfanın içeriği çekiliyor ve haber başlıklarını içeren <h2> etiketleri bulunarak ekrana yazdırılıyor. Elbette, her web sitesi farklı bir yapı kullanır. Bu nedenle, hedef sitenin HTML yapısını inceleyerek uygun etiket ve sınıf isimlerini belirlemeniz gerekir.

Dinamik İçeriklerde Selenium Kullanımı

Bazı web siteleri içeriğini JavaScript ile yüklüyor olabilir. Bu durumda Requests ve BeautifulSoup yetersiz kalacaktır. Bunun için Selenium kütüphanesi devreye girer. Selenium, bir web tarayıcısını otomatik olarak kontrol etmenizi sağlar ve sayfa üzerindeki dinamik içerikleri de yükleyebilir.

Selenium’u kullanarak bir sayfanın içeriğini almak için şu adımları izleyebilirsiniz:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from bs4 import BeautifulSoup

driver_path = 'chromedriver.exe yolunu girin'
service = Service(driver_path)
driver = webdriver.Chrome(service=service)
driver.get('https://www.ornekhaber.com')
soup = BeautifulSoup(driver.page_source, 'html.parser')
# İstenilen verileri soup ile çekebilirsiniz
driver.quit()

Web Scraping Yaparken Dikkat Edilmesi Gerekenler

Web scraping işlemlerinde en önemli konulardan biri etik ve hukuki kurallara uymaktır. Her web sitesinin kullanım şartlarını inceleyin ve robots.txt dosyalarını kontrol edin. Aşırı istek göndererek sunucuya zarar vermemek adına isteklere zaman aralığı koymak, yani “delay” eklemek çok önemlidir. Ayrıca, elde edilen verilerin ticari amaçla kullanımı için mutlaka sitenin izin verdiğinden emin olun.

Scraping sırasında aşağıdaki noktalara dikkat etmek gerekir:

  • İstekler arasında time.sleep() ile gecikme ekleyin.

  • Çok fazla veri çekmekten kaçının.

  • Kullanıcı ajanı (User-Agent) bilgisini isteklere ekleyin.

Sonuç ve İleri Seviye Yöntemler

Python ile web scraping, doğru kütüphaneler ve yöntemlerle oldukça etkili bir şekilde gerçekleştirilebilir. Ancak, veri çekme işlemlerinde dikkatli olmak ve yasal sınırlar içinde kalmak büyük önem taşır. Daha ileri seviyede büyük ölçekli veri çekimleri için Scrapy gibi framework’ler de tercih edilebilir. Ayrıca, çekilen verilerin düzenlenmesi ve saklanması için Pandas gibi veri analizi kütüphaneleriyle entegre çalışmalar yapılabilir. Web scraping, veri bilimi ve makine öğrenmesi projelerinin temel taşlarından biri olarak öne çıkmaktadır.

3.

17 Haziran 2025 Salı

Yapay Zeka Destekli Chatbot Nasıl Oluşturulur? (Python ve GPT-3 ile Adım Adım Rehber)

Giriş

Son yıllarda yapay zeka teknolojilerindeki hızlı gelişmeler, kullanıcılarla etkileşim kurmak isteyen işletmeler ve bireyler için akıllı sohbet botlarını (chatbot) daha ulaşılabilir hale getirmiştir. Özellikle OpenAI tarafından geliştirilen GPT-3 gibi ileri seviye dil modelleri, sohbet botlarının insan benzeri yanıtlar verebilmesini sağlamaktadır. Bu yazıda, Python programlama dili ve OpenAI GPT-3 API’si kullanarak adım adım bir chatbot nasıl oluşturulacağını öğreneceksiniz.

1. OpenAI GPT-3 API Anahtarı Nasıl Alınır?

Bir chatbot geliştirmek için öncelikle GPT-3 API erişimine ihtiyacınız olacak. OpenAI’nin resmi web sitesine giderek hesap oluşturduktan sonra API anahtarınızı alabilirsiniz. Bu anahtar, Python uygulamanızın GPT-3 ile iletişim kurmasını sağlar. Not: API anahtarınızı kimseyle paylaşmamalısınız.

2. Gerekli Python Kütüphanelerinin Kurulumu

Chatbot projesi için temel olarak openai ve dotenv kütüphanelerine ihtiyacınız olacak. openai kütüphanesi, GPT-3’e istek göndermek için kullanılırken, dotenv ise API anahtarınızı güvenli şekilde saklamanızı sağlar. Terminalde şu komutu kullanarak kütüphaneleri kurabilirsiniz:

pip install openai python-dotenv

3. Python ile Basit Bir Chatbot Yazma

Şimdi temel bir Python kodu ile GPT-3 tabanlı bir chatbot yazalım. Öncelikle aynı dizinde bir .env dosyası oluşturarak API anahtarınızı şu şekilde ekleyin:

OPENAI_API_KEY="api-anahtarınız-buraya"

Daha sonra aşağıdaki Python kodunu kullanarak chatbot’unuzu başlatabilirsiniz:

import openai
from dotenv import load_dotenv
import os

load_dotenv()
openai.api_key = os.getenv("OPENAI_API_KEY")

def sohbet_bot(mesaj):
  yanit = openai.Completion.create(
    engine="text-davinci-003",
    prompt=mesaj,
    max_tokens=150
  )
  return yanit.choices[0].text.strip()

while True:
  kullanici = input("Siz: ")
  if kullanici.lower() == "çıkış":
    break
  print("Bot:", sohbet_bot(kullanici))

4. Güvenlik ve Kullanım Sınırları

GPT-3 API’si ücretli bir servistir ve belirli bir kullanım kotası bulunur. API anahtarınızı kimseyle paylaşmamalı, mümkünse kodunuzu sunucu ortamında çalıştırmalısınız. Ayrıca, kullanıcı mesajlarını doğrudan GPT-3’e iletirken gizlilik ve güvenlik önlemlerini göz önünde bulundurmanız gerekmektedir.

5. Chatbot'u Özelleştirmek

Oluşturduğunuz chatbotun yeteneklerini artırmak için çeşitli ayarları değiştirebilirsiniz. Örneğin, max_tokens parametresi ile yanıtların uzunluğunu ayarlayabilir, temperature ile yanıtların çeşitliliğini ve yaratıcılığını kontrol edebilirsiniz. Ayrıca, daha doğal ve bağlama uygun yanıtlar almak için prompt kısmını zenginleştirebilirsiniz.

Sonuç

Bu rehberde, Python ve OpenAI GPT-3 API’sini kullanarak adım adım bir sohbet botu oluşturmayı öğrendiniz. Bu temel bilgilerle, müşteri hizmetleri, bilgi asistanı veya eğlenceli bir sohbet aracı gibi farklı alanlarda özelleştirilmiş chatbotlar geliştirebilirsiniz. Teknolojinin güncel imkanlarını takip ederek projelerinizi ileriye taşıyabilirsiniz.

15 Temmuz 2023 Cumartesi

Javascript Geliyorum Bekle :)

Linkedin üzerinden Javascript eğitimine başladım. Birazda front-end tarafını merak ettiğim ve güncel teknolojileri öğrenmek istediğim için bakmak istiyorum aslında. Şimdilik ortamımdaki yazılım araç gereçlerini hazırladım ve çalışma dosyalarını bilgisayarıma yükledim. Bazı uygulamalar ve yaptığım kurulumlar aşağıdaki gibi:

Visual Studio Code Editor
Live Server
Prettier
ESLint
Node.js
Visual Studio Code Console - npm install
Visual Studio Code Settings - Editor: Format On Save (Aktif)

2 Nisan 2023 Pazar

pyuic ile python (.py) Dosya Dönüştürme Hatası Çözümü

 PyQt5 ile hazırladığım bir formu MainWindows.ui dosyasını python dosyasına dönüştürmek istiyorum ancak dizinde .ui dosyasını görmüyor veya dönüştürme işlemi yapılsa bile dosyanın içeriğine bakıyorum herhangi bir kod gözükmüyor. Bunu çözmek için dönüştürmek istediğim .ui dosyasını shift tuşuna basılı turarak power shell ile açtım ve aşağıdaki kodu burada çalıştırarak kodların dönüştürülmesini sağladım. 

python -m PyQt5.uic.pyuic -x MainWindows.ui -o MainWindows.py


4 Kasım 2022 Cuma

Scratch mi Yoksa Scoolcode'mu Daha Etkili? | Çocuklarda Kodlama Eğitiminin Önemi ve Logiscool'un Farkını İnceliyoruz

Çocuklara erken yaşlarda kodlama ve dijital okuryazarlık eğitimleri aldırmak ve onların tüketen yerine biraz daha üreten tarafta olmalarını sağlamak günümüz dünyasında en önemli kazanımlardan biri diyebiliriz. STEM eğitimi olarak da adlandırılan, bazı kurumlarda robotik kodlama adı altında verilen veya direkt blok kodlama, görsel programlama da diyebileceğimiz yazılım ve teknoloji tabanlı eğitimlerin ne kadar önemli olduğunu artık çok daha iyi anlıyoruz.

Çocuklar kodlama ve dijital okuryazarlık eğitimlerini erken yaşlarda almadıklarında sadece dijital içerikleri tüketen, oyun oynayan, video izleyen veya sosyal medya platformlarını kullanan bir "kullanıcı" olmaktan dışarıya çıkamıyorlar. Bu aslında onların hayal kurmalarını, fikir üretmelerini, proje geliştirmelerini, yani gelişimlerini kısıtlayan, aynı zamanda diğer derslerinin de başarısını etkileyen çok önemli bir faktör.

Kodlama ile erken yaşlarda tanışan çocuklar neler öğreniyor?

Erken yaşlarda kodlama ile tanışan çocuklar algoritma ile birlikte aslında kodlamanın temel kavramlarını ve terimlerini öğrenmeye başlıyorlar. Sadece algoritmayı bile öğrenmeleri onların problem çözme yeteneklerini geliştiren, olaylara farklı bakış açılarıyla yaklaşmalarını sağlayan, hayal kurmalarını destekleyen en basit kavramlardan biri. Ancak etkisi çok büyük. 

Steve Jobs kısaca bu konuda şöyle diyor: "Bilgisayar programlamayı herkes öğrenmeli. Çünkü bu, size düşünmeyi öğretir."

Çocuklarda düşünmeyi ve hayal kurmayı öğrenirler. İşte bundan daha değerli ne olabilir. Bırakın çocuklarınız hayal kurabilsinler, düşünsünler, kendileri bir fikir bulsun ve çok basit bir oyun bile olsa somut bir proje yapıp başarma duygusunu tatsın. Bu inanılmaz kıymetli bir kazanım. Kodlama eğitimleri elbette algoritma ve yazılımın temellerini kazandırdığı gibi matematik, fizik ve İngilizce gibi diğer derslerin gelişimlerini destekleyici içeriklere sahip olduğu için çocuğun genel olarak okul başarısını olumlu yönde etkiler.

Scratch

Kısaca Scratch nedir? Nasıl kullanılır?

Scratch MIT üniversitesinin geliştirdiği ve ücretsiz olarak kullanıma sunulan blok tabanlı bir programlama dili ve arayüzü. Junior olarak adlandırılan biraz daha küçük yaş gruplarına hitap eden, telefonla kullanılabilen arayüze sahip oldukları gibi birde web sitesi üzerinden veya bilgisayara yüklenebilen bir programla da kod yazma imkanı sunan platform. Ücretsiz olması, dünya tarafında geliştiriciler tarafından desteklenmesi, çizim desteği, diğer platformlarla entegre proje geliştirmeyi desteklemesi artı yönleri olarak sıralanabilir. 

Ancak Scratch dilinin ve platformunun eksi yönleri nelerdir diye soracak olursanız: Yaş gruplarına ve seviyelere göre kod paletlerinin değiştirilememesi ve yazılı kodlama dillerine geçişi kolaylaştıran bir arayüze sahip olmamasını söyleyebiliriz.

Logiscool'un farkı nedir ve scoolcode'u öne çıkaran şeyler nelerdir?


Logiscool

Logiscool 2014 yılında Macaristan'da kurulmuş uluslararası bir kodlama okulu. Web sitelerinden gördüğüme göre 36 ülkeden fazla bölgede ve on binlerce öğrencisi olan hedef kitle olarak çocuklara odaklanmış, kendi geliştirme platformu ve programlama dili olan bir okul. 

Scratch'e göre sıralayabileceğimiz farkları ve öne çıkan özellikleri:

  •  Macaristan'daki merkezleri tarafından geliştirilen bir müfredatlarının olması (tüm dünyadaki Logiscool okullarından gelen geri bildirimlerle desteklenen ve iyileştirilen bir sistem/müfredat)
  • Dünya standartlarında bir eğitim görme fırsatı; Türkiye'deki Logiscool okulunda ders gören öğrenci ile Almanya veya Amerika'daki bir Logiscool öğrencisi aynı sürelerde, aynı eğitim içeriklerine ulaşabiliyor olması
  • Ders saatleri dışında kullanılabilen canlı bir platform (my.logiscool), böylece öğrenciler ders dışında da kendileri serbest zamanlarında proje geliştirebiliyor veya diğer öğrencilerin geliştirip toplulukta paylaştıkları oyunların kodlarını inceleyip, projeleri deneyebiliyor.
  • Farklı yaş grup ve seviyelerine göre değişen kod paletlerinin olması. Böylece ilkokul öğrencisi ile ortaokul veya lise öğrencisi aynı kod paletlerini kullanmıyor. Basitten gelişmişe doğru ilerliyor.
  • Kurs sonlarında verilen sertifikalar
  • Yazılı programlamaya geçişi kolaylaştıran MIX metot olarak adlandırdıkları bir arayüze sahip olmaları. Bu ekran ve kurslarda hem blok kodlama hem de yazılı programlama eğitimi aynı anda tek bir ekranda veriliyor. 
  • Sadece kodlama değil, aynı zamanda dijital okuryazarlığı destekleyici kamplar ve atölye dersleriyle gelişimi destekleyen geniş müfredata sahip olmaları. Dijital illüstrasyon, video prodüksiyonu, Minecraft, Roblox, mobil uygulama geliştirme, Junior hacker gibi farklı alanlardaki içerik.
  • Ücretsiz deneme dersi imkanı; Web sitelerinden başvuru yaparak gerçek bir derse katılabilir ve sistemlerini, bir dersin nasıl işlendiğini kolaylıkla gözlemleyip kararınızı verebilirsiniz.
  • Ve tabii ki kaliteli eğitmen kadrosu. Detaylı bilgi için logiscool.com adresini ziyaret edebilirsiniz.

Erken yaşlarda kodlama eğitimi aldırmanın faydaları elbette burada yazdıklarımızdan çok daha fazlası ve bu yazımda sadece dünya üzerinde en çok kullanıcısı olan iki büyük programlama dilini karşılaştırmaya çalıştım. Scratch ve Scoolcode. Ancak bildiğiniz gibi farklı diller, eğitim setleri veya programlama dilleri dahi bulunmakta. Doğru bir okulda, doğru bir network'te bu eğitime başlamak önemli. Logiscool'u bu anlamda ücretsiz deneme dersi almanız için önerebilirim. Çocuklarınıza hayal kurmaları için fırsat verin ve hayal kurmalarını destekleyin. Bu onların geleceği için önemli. Ve bizler çok kısa bir süre sonra kodlama eğitimi almış çocuklarımızın geliştirdikleri oyunları oynayacağız veya onların yazdıkları programları bilgisayarlarımızda kullanacağız, belki de dünya üzerinde büyük bir problemin çözümüne katkıda bulunacaklar, kurdukları şirketler dünya üzerindeki en değerli şirketler arasına girecek, büyük projelere imza atabilecekler. Ancak bunun için erken yaşlarda kodlama eğitimine başlamak ve çocuklarımızı desteklemek önemli. İzin verin çocuklarınız hayal kurmayı öğrensinler. 

31 Aralık 2021 Cuma

__dir__() Komutu İle Class Özellerine Ulaşmak

Örneğin bilgisayar sınıfından türettiğiniz bir "bilgisayar2" isimli yen bir objeniz var. Bu objenizi kullanarak aşağıdaki gibi bir kullanımla obje üzerinden sınıf genelinde kullanabileceğiniz özelliklere ve bazı fonksiyonlara ulaşabilir ve bunların bir listesini yazdırıp inceleyebilirsiniz.

print(bilgisayar2.__dir__())

23 Aralık 2021 Perşembe

İki Hipervizör Arasında İletişim Kurmak - VirtualBox ve Hyper-V

 Bilgisayarımda Hyper-V üzerinde Windows Server 2022 ve VirtualBox üzerinde de Windows 11 kurulu. Bu iki hipervizör arasında iletişim kurmak için bir hayli uğraştım ve sonunda başarabildim. 

Öncelikle sunucu üzerinde DHCP kurulumu yaptım, bununla ilgili bir konfigürasyon vs. herhangi bir işlem yapmadım biraz deneme yanılmaydı. Neyse sonraki adımlarda hipervizörler üzerinde network kartı bilgileriyle biraz oynadım. Şöyle ki son olarak VM VirtualBox tarafında "biridge" ve Hyper-V tarafında da "external" olmak üzere network kartlarını yapılandırdım. Sonra aynı IP bloğunda yer aldıkları için client üzerindeki DNS bilgisini sunucu IP adresiyle değiştirdim. Ve nihayet bilgisayarı domaine ekleyerek yeniden başlattım ve client üzerinde domainde yer alan bir kullanıcı bilgisiyle oturum açabildim. Bunu yapabilmek için biraz uğraştım ancak buna değdi. :)



20 Kasım 2021 Cumartesi

Split İle İçeriği Diziye Dönüştürme (String to Dizi List)

 message = 'Hello there. My names is Hakan'

print(message[1])
#split ile içerik bir diziye dönüştürülür ve dizinin
# 1. elamanı aşağıda yazdırılır
message = message.split()
print(message[1])

Python Replace Basit

 message = 'Hello there. My names is Hakan'

message = message.replace('Hakan', 'İsim')
print(message)

20 Ekim 2021 Çarşamba

11 Aralık 2020 Cuma

No Python İnterpreter Hatası

 PyCharm IDE'sinde pygame ile bir şeyler yazmaya çalışırken pip üzerinden pygame'ü yüklememe rağmen projeme pygame'i import edemiyordum. Bunun nedeni de garip bir şekilde "No Python İnterpreter" uyarısı alıyor olmamdı. Çevirmen yok gibi bir şey diyor, ama buradaki asıl hata IDE'nin python'un kurulu olduğu dizini göremiyor olmasından kaynaklı. Sanırım öyle yani. :)


Öncelikle pip üzerinden kurulumu böyle yaptım:


Bu resimde gördüğünüz gibi, System Interpreter kısmında sağ tarafta "Interpreter:" olarak python'un kurulu olduğu dizin burada yazmalı. Eğer burada python dizininiz yazmıyorsa pygame gibi bir kütüphaneyi IDE üzerinden kuramaz veya çalışmanıza dahil edemezsiniz.


Dizin doğru bir şekilde IDE'ye tanıtıldıktan sonra artık istediğiniz gibi bu ekrandan kütüphane aratabilir ve IDE ile projenize kurulumu gerçekleştirebilirsiniz.


Son olarak dizini eklerken "python.exe" dosyasını doğru bir şekilde seçtiğinizden emin olun.




27 Ağustos 2020 Perşembe

Python Anaconda ve Spyder

 Yeni başladığım bir Python kursunda hayatıma "Anaconda" ve "Spyder" isimli uygulamalar girmiş bulunmakta. Henüz çok yeni olmasına rağmen buraya kısa bir not eklemek istedim.

Sypder'da yeni bir section yani bölüm açmak için ilgili satıra " %% koyuluyor ve ilgili bölümü çalıştırmak için "shift+enter" tuşlarına basılması yeterli oluyor.

11 Ağustos 2020 Salı

Analiz - Algoritma ve Kod'a Kısa Bir Bakış

Kullanıcıya hesaplayacağı formüllerle ilgili bilgilendirme yapılır ve seçim yapması istenir. Seçimlere bağlı olarak program kendi içerisinde yönlenerek kullanıcıya istediği işlemi yapması için veri girişi beklenir. Girilen verilere bağlı olarak hesaplamalar program tarafından yapılarak arayüz üzerinden bilgilendirme yapılır ve tekrar döngü üzerinden ikinci bir işlem için seçim yapılmak üzere kullanıcı bilgilendirilir. İki işlem yapıldıktan sonra çıktılarla beraber uygulama sonlandırılır.



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FormulHesaplama
{
    class Program
    {
        static void Main(string[] args)
        {
          
            for (int i = 0; i < 2; i++)
            {
               
               
                Console.WriteLine("");
                Console.WriteLine("İşlem Yapmak İstediğiniz Formülü Seçiniz..");
                Console.WriteLine("KareKökü Hesaplamak için: 1");
                Console.WriteLine("Tanjant Hesaplamak için: 2");
                Console.WriteLine("Rastgele Bir Sayının Sinüsünü Hesaplamak için: 3");
                Console.WriteLine("a üzeri b'yi Hesaplamak için: 4");


                int formul = Convert.ToInt32(Console.ReadLine());
                if (formul == 1)
                {
                    Console.WriteLine("Karekökü hesaplanacak sayıyı giriniz:");
                    int karekok = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine(Math.Sqrt(karekok));
                }

                else if (formul == 2)
                {
                    Console.WriteLine("Tanjant hesaplanacak sayıyı giriniz:");
                    int tanjant = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine(Math.Tan(tanjant));
                }

                else if (formul == 3)
                {
                    Random n = new Random();
                    int rasgele = n.Next();
                    Console.WriteLine("Sinüsü hesaplanacak sayıyı :" + rasgele);
                    Console.WriteLine("Sonuç");
                    Console.WriteLine(Math.Sin(rasgele));
                   
                }

                else if (formul == 4)
                {
                    Console.WriteLine("a sayısını giriniz:");
                    int a = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine("b sayısını giriniz:");
                    int b = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine(Math.Pow(a, b));
                }

                if (i == 0)
                {
                    Console.WriteLine("Program tekrar başlatılıyor...");
                    Console.WriteLine();
                }

                else
                {
                    Console.WriteLine("Program Sonlandırılıyor...");
                    Console.WriteLine();
                }
               
                System.Threading.Thread.Sleep(3000);
                Console.Clear();
            }
           
        }
    }
}

18 Nisan 2020 Cumartesi

Python time.clock() Hatası Hakkında

Python'da time kütüphanesinin clock() fonksiyonunu kullanırken aşağıdaki gibi bir hata aldım:


C:/Users/paneL/Desktop/Dersler/Ders 06 - Fonksiyonlar/zaman_modulu_ornek.py:13: DeprecationWarning: time.clock has been deprecated in Python 3.3 and will be removed from Python 3.8: use time.perf_counter or time.process_time instead
print(time.clock())

Python 3.3'te time.clock() fonksiyonu kaldırılmış ve bunun yerine time.perf_counter ve time.processs_time gibi fonksiyonlar gelmiş. Yani aynı kodu bu yeni fonksiyonları kullanarak yazmanız veya kodunuzu güncellemeniz gerekiyor. Eğer python sürümünüz 3.3'ten yüksekse. Ben hatayı aldığımda python sürümüm 3.7.2 gözüküyordu.

Peki ama python sürümünüzü nasıl öğrenebilirsiniz?


Bunun için IDE üzerinden veya python shell uygulaması üzerinden aşağıdaki komutları çalıştırmanız yeterli olacaktır: Python'u güncelleştirmek içinse python resmi web sitesi üzerinden yeni sürümü indirip kurabilirsiniz.

import sys
print(sys.version)

16 Nisan 2018 Pazartesi

Office 365 Outlook Kurulum Problemi | Bu Çözüme İnanamayacaksınız!

Bir süredir yeni kurduğum bir bilgisayara mail kurulumu yapmaya çalışıyorum. Bilgisayarda Windows 8.1 Pro işletim sistemi var ve Office 2010 Standart 32bit sürümünü yükleyerek ilerledim. Her ne hikmetse Office 365 Exchange üzerinde çalışan bir mail hesabını outlook'a tanımlayamıyorum. Problemde kullanıcı adı yada şifreyi kabul etmemesi. Çözüm için elle kurulum ayarlarını, proxy seçeneklerini vs. her şeyi denedim, hatta hesabın şifresini güncellemeyi bile düşündük ve oda işe yaramadı. Meğersem kurduğum Office sürümünün servis paketi eksikmiş, sonuç olarak Office 2010 Servis Paket 2'yi bilgisayara yükledim ve yeniden başlatıp mail kurulumunu sorunsuzca saniyeler içerisinde yapabildim. Olur da böyle bir problemle karşılaşırsanız mutlaka Office güncelleştirmelerini kontrol edin.