Skip to content

Instantly share code, notes, and snippets.

View nejdetckenobi's full-sized avatar

Nejdet Çağdaş Yücesoy nejdetckenobi

View GitHub Profile
import json
def get_index_or_zero(arr, index):
try:
return arr[index]
except IndexError:
return 0
def ArrayChallenge(strArr):
from urllib.parse import urlparse, urlunparse, ParseResult
# URL parçala
p = urlparse('https://google.com.tr/naber/iyidir;senden=bendende?yasemin=nejdet#asd')
print(p) # Bunu bir incele
# URL birleştir
p = ParseResult(scheme="https",
@nejdetckenobi
nejdetckenobi / rerename
Last active January 4, 2022 16:19
A tool for renaming files with regex patterns
#!/usr/bin/env python
import re
import os
import shutil
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument('-a', '--abs-path', action='store_true', help='Use absolute path. (BE CAREFUL)')
@nejdetckenobi
nejdetckenobi / query.sql
Last active December 18, 2021 08:48
Challenge
WITH CTE
AS
(
SELECT
customer_id,
called_at,
CASE
WHEN success_result ISNULL THEN error_result
WHEN error_result ISNULL THEN success_result
END AS result,
#!/usr/bin/env python
from argparse import ArgumentParser
from base64 import b64encode
import mimetypes
parser = ArgumentParser()
parser.add_argument('file', type=str)
parser.add_argument('-t', '--type', type=str)
CREATE TABLE calls (
customer_id INTEGER,
called_at TIMESTAMP,
SUCCESS_RESULT VARCHAR(2) NULL,
ERROR_RESULT INTEGER NULL
);
def retry(f):
def wrapped(*args, **kwargs):
for i in range(4):
# Vereceğimiz fonksiyonu çağırmayı ve sonucunu döndürmeyi 4 kere denesin. Olmuyorsa ses etmesin
try:
return f(*args, **kwargs)
except Exception:
pass
# Buraya gelebildiyse fonksiyonu son bir defa daha çağırmayı denesin. Patlıyorsa artık patlasın ne yapalım
return f(*args, **kwargs)
@nejdetckenobi
nejdetckenobi / time_logger.py
Created February 18, 2020 09:26
A timer class for logging process times.
from time import time
class Timer(object):
def __init__(self, label=None, logger=None, verbose=False):
self.start = None
self.end = None
self.verbose = verbose
self.label = label
self.logger = logger
from itertools import product
class Caveman(object):
def __init__(self, name):
super(Caveman, self).__init__()
self.name = name
self.actions = []
self.opponent_actions = []
self._sharpness = 0
[
{
"bankCode": 206,
"bankName": "Türkiye Finans Katılım Bankası",
"binNumber": "528293",
"cardAssociation": "MASTER_CARD",
"cardFamily": "Bonus",
"cardType": "CREDIT_CARD",
"conversationId": "123456789",
"locale": "tr",