목록py/Eternal Return 분석 (12)
jm_p_op
비동기화 된 함수들은 병렬로 처리가 되지만 안에 인스턴스된 한 객체의 메서드를 사용한다면, 결국 동기화랑 다를것이 없다 객체화된 메서드는 하나임으로 들어온 순서대로 처리 즉 동기화된거랑 차이가 없다 import time import asyncio class T: def __init__(self) -> None: self.x=[] def add(self,n,i): self.x.append(n) time.sleep(1) print("sleep") print(f'{n}명 중 {i}번 째 사용자 조회 중 ...') # async -> 비동기 함수로 변경 import time import asyncio # async -> 비동기 함수로 변경 t=T() async def find_users_async(n): for..
https://github.com/jmpop97/ER_statistics/blob/78bba9e0cfc88b9d3245f557ab11e3d2409aa045/ER_apis/ER_api.py#L213 ERAPI().save_games(start_game: int,n: int = 1,second: int = 1,game_type: list = ["Rank", "Normal", "Cobalt"],duplication=True,reverse=True,d=1, root_dir: str = "") start_game - 게임 데이터 시작 지점 n - 표본의 갯수 game_type - 게임 종류 duplication - 중복 제거 이미 저장된 데이터를 또 받아올 필요가 있을까? → 기본 -True reverse - 역..
conditions에 해당되는 list추출 conditions에서 간단한 산수 추가 => 이름이 길어짐 => 이름 변경필요 => kwargs사용 kwargs값의 key값이 string 값으로 넣어줄수가 없다(*,+등등 사칙연산을 변수명으로 쓸수없음)=>unpacking으로 집어 넣기 class ListFilterData(DataClass): def __init__(self, *conditions, **name_dic): """1.must name_dic.value not in conditions 2. only */+-() """ self.name_dic = name_dic self.conditions = {} for condition in conditions: self.conditions[name_dic..
class FigureType: def __init__(self): self.plt def barplot(self,**conditions2): conditions3=conditions2 sns.barplot(**conditions3) test=FigureType() conditions1={db="1",x="2",y="3"} test.barplot(**conditions1) 함수를 쓸때 kwargs을 하나 하나 지정한다면, kwarg 하나 추가할때마다, 함수를 바꿔줘야한다. condition1 => 언팩킹으로 데이터 풀기 condition2 => 팩킹으로 묶기 condition3 => 언팩킹으로 원래 실행하는곳에 풀어주기
[1,2,3]중간 값 같은 경우 (1+2+3)/3 이 계산이 1/3+2/3+3/3 보다 빠를 것이다. 이처럼 계산의 순서에 따라 효율성이 달라진다. class FilterType(): init(self,type,condition): ''' 초기 공간 할당 ''' add_data(self,user_data): ''' 데이터 추가 ''' last_caculate(self): ''' 마무리 계산 ''' 위와 같이 만든후 아래와 같이 계산을 한다면 원하는 방식으로 만들수 있다. '''데이터 공간 생성''' datas=FilterType(self,type,condition) '''데이터 추가''' while date in data_set datas.add_data(data) '''마무리 계산''' datas.ca..
만줄이나 되는 빅데이터들(한판에대한 데이터)을 천판정도 구한데이터를 읽는다면 cpu가 고통 받을것이다. 따라서 필요한 데이터만 정재하자. 데이터를 정재하더라도 한판당 약 24명의 데이터가 있으므로 빅데이터이다. 따라서 정재하면서 원하는 데이터로 뽑으면 좋을것이다. 따라서 데이터를 class에 넣고 정재할때 데이터를 한번더 가공하자. 원하는 데이터의 타입이 달를수 있으므로 초기설정을 dic과 함께 사용하자 class FilterType(): def filter_data_init(self): self.dic_characterNum_datas={} pass dic_type_init={ "filter": filter_data_init, } def __init__(self,type,condition): self...
https://github.com/jmpop97/ER_statistics/blob/2e6637c8157a3c44810a294f5e12b6e9ee95e1e6/ER_apis/ER_api.py#L13 game_api(game_id) - 게임 id( game_id )값에 해당되는 게임 데이터 받기 save_game(game_id,responce_datas) - json데이터(responce_datas)를 gameid.json 으로 파일 저장 save_games(start_game,end_game) - 게임번호 시작부터 끝까지 api받아서 그 데이터를 json파일로 저장