본문 바로가기

Tech/etc6

데이터 베이스(DB) 다국어 지원, 어떻게 구현하는게 좋을까? Flutter 스터디에서 다양한 프로젝트를 하다가, 이번엔 판을 좀 키워보았습니다. Flutter에 제공되는 정보를 Next.js를 써서 웹페이지로도 제공을 하고, 한글/영어로 서비스 제공이 가능하도록 하는 것이죠. Flutter 소스 내에서 사용되는 언어들에 대해서는 easy_localization 패키지를 써서 진행을 했지만, 서비스에서 제공되는 데이터 중 서버(자체서버) api를 통해 오는 데이터들의 다국어 지원을 어떻게 할지에 대해서는 고민이 필요했습니다. 물론 최근에 번역 시스템이 아주 잘 되어있어서 번역 패키지를 쓰는 것도 좋겠지만, 아직 그 '번역체'의 느낌을 저버릴 수가 없더라구요. 좀 더 확실한 글로벌 서비스 제공을 위해 번거롭지만 컨텐츠들을 직접 번역하기로 마음먹었습니다. 구글링과 함께.. 2021. 4. 23.
더 찾기 귀찮아서 정리하는 정규식 표현 Javascript, Python, Dart 및 각종 에디터에서 사용하는 정규식을 매번 인터넷 검색해서 찾다가 찾더라도 내 블로그에서 찾아야지 하는 마음으로 정리해봅니다. 정규식 쓰는 방법 /이 사이에 쓰는 내용은 정규식 패턴이다/ 03:30 처럼 시간 (gr[ea]y) => grey, gray 둘 다 검색 (gr[ae]y[^a-z]) => grey, gray 검색하되 뒤에 아무것도 안붙어있는 단어 검색 정량 - 해당 문자 뒤에 붙여서 쓰며 {}를 붙여 쓸 수 있음 ? 없거나 있거나 (zero or one) * 없거나 있거나 많거나 (zero or more) + 하나 또는 많이 (one or more) {n} n번 반복 {min,} 최소 {min,max} 최소, 그리고 최대 a? => a가 없거나 있거나.. 2021. 3. 31.
[Python] 주식 자동매매 봇 만들기 함수(function), class 다루기 파이썬은 함수 만드는게 쉽다. 뭘 리턴할지, 어떤 인자를 받을지 지정을 해도되고, 안해도 되니깐 함수 선언하기 def function_name(): print("a") function_name() >>> a 인자 있는 함수 선언하기 def function_a(a): print(a) function_a("jaesung") >>> jaesung return값 있는 함수 선언하기 def function_b(a): return a*2 print(function_b(4)) >>> 8 함수를 인자로 넣기 def function_c(a): return a*3 def function_d(a = 0, b): print(a+b): function_d(b=function_c(3)) >>> 9 a는 기본값을 0으로 두고 b .. 2020. 8. 21.
[Python] 주식 자동매매 봇 만들기 tuple, list, dictionary, set Tuple tuple = (a,b,c, ...) 처리속도 빠르지만 수정/삭제가 절대 불가능 type(tuple) 를 통해 class 'tuple'임을 확인 가능 for i, value in enumerate(tuple): print(value) print(i) >>> 이런 식으로 동일하게 자릿수와 값을 사용 가능하고 tuple[0], tuple[1]과 같이 접근도 가능 *enumerate 쓰면 속도가 느려지므로 필요한 상황이 아니면 굳이 쓸 필요 없음 List list = ["a", "b", "c" ... ] 추가, 수정, 삭제 모두 가능 type(list) 를 통해 class 'list'임을 확인 가능 추가 list.append("g") append를 통해 item 추가 가능(맨뒤에 추가) 삭제 del.. 2020. 8. 20.
[Python] 주식 자동매매 봇 만들기 파이썬 기본문법(변수, 조건문, 반복문) 파이썬 기본문법 1. 변수 변수 선언 시 왼쪽이 변수, 오른쪽이 값. 변수 타입은 오른쪽 값에 따라 자동으로 지정 ex) a = 1000 a는 int형이 되고 1000이라는 값이 들어감 type(a)를 print해보면 int 가 뜸 str, float, int 등 존재 id(a)를 통해 주소값 접근할 수 있음(쓸데는 있으려나?) 2. 문자 관련 함수 - 길이구하기 b = "mystring" len(b) : 길이반환. 이 경우 8 - 문자열의 일부만 가져오기 b = "mystring" b[0:5] : b스트링의 시작,끝위치를 지정하여 나타내줌. 이 경우 "mystr" 출력 b[:5] , b[3:] 이런 식으로 처음, 끝은 생략 가능(자동으로 문장의 처음과 끝을 의미 b[-2:-1] 이런 식으로 문장의 끝에.. 2020. 8. 20.
[Python] 주식 자동매매 봇 만들기 설치 관련 정리 1. 아나콘다 설치 - anaconda.org 키움 api 사용을 위해서는 32비트 설치 해줘야하나 64비트로 설치 후 32비트 설정 해주는 방식 사용 환경변수 등록 옵션은 설치 시에 나와있음 Individual products 하단의 Windows 64-bit Graphical Install 설치(Python 3.8 ver) 2. 32비트 전환 옵션 명령어 > set CONDA_FORCE_32BIT=1 // 32비트로 전환. 다시 64비트로 전환하려면 0 또는 아무것도 안넣고 실행 conda create -n py37_32 python=3.7 anaconda // py_37_32에 파이선 3.7버전으로 가상환경 설정. 3.8은 최신버전이라 호환성 걱정되어 3.7로 설정함 conda env list //.. 2020. 8. 20.