데이터 만들기

김상우·2022년 9월 11일
0

Python

목록 보기
14/14
post-thumbnail

나는 특정한 데이터를 통해 테스트를 하려고 했다.
이 특정한 데이터를 만들기 위해 타이핑을 일일히 해야한다는 자체가 귀찮았다.

자 그럼 본론으로 들어간다.

  1. 난수발생 소스 장착
    첫번째로 생각한 것은 데이터를 무작위로 추출하기 위해 난수발생 소스를 입력했다.
    numpy를 사용할지 고민했지만 그냥 random으로만 사용하기로 했다.
import random
  1. random 함수를 사용해서 나타난 결과를 콘솔에서 드래그로 복붙하는 것 마저도 귀찮아서 txt로 남기기로 생각했다.
    그래서 sys를 import 했다.
import sys
  1. 무작위의 숫자를 뽑아내서 txt파일로 저장할 수 있게 모든 준비는 끝났다.
    그런데 나는 무작위 문자도 뽑아내서 같이 저장하고 싶었기 때문에 string도 사용했다.
import string
  1. 100개의 무작위 데이터를 뽑아내기 위해 단순하게 반복문을 사용했다.
    난수로 발생한 데이터를 문자열로 뽑아내기 위해 join(str)~~을 사용했다.
for i in range(100):
	num=[]
    for i in range(1, 4):
    	num_1=random.randint(0, 9)
        num.append(num_1)
    num_result="".join(str(s) for s in num1)
    
    print(num_result)
  1. 무작위 숫자는 위의 소스로 활용했으니, 무작위 대문자를 뽑아내기위해 위와 똑같이 반복문을 사용했다.
for i in range(100):
	rand_str=string.ascii_uppercase
    random_string=random.sample(rand_str, 20)
    rand_string="".join(random_string)
    
    print(rand_string)
  1. 하다보니 뭔가 부족하다는 것을 느껴서 무작위 특수문자를 추가했다.
rand_sym=string.punctuation + string.whitespace
symbol=random.sample(rand_sym, 5)
r_symbol="".join(symbol)

print(r_symbol)
  1. 이제 이 무작위 패턴으로 나온 결과를 txt로 저장하기 위해 모든 소스를 stdout 사이에 넣었다.
sys.stdout=open(random_data.txt)
	소스
sys.stdout.close()
  1. 마무리
    어쨌든 뇌를 빼놓고 코드를 작성하고 결과는 잘 나타났다.
    7번 항목까지 쓰다보니까 굉장히 지저분한 것 같다.
    이 글을 끝까지 보고나면 변수는 왜이렇게 많이 설정하고 numpy는 왜 사용을 안했는지 등등 의문을 가질 수 있다.
    의문점이 있다면 내가 초보이기 때문에 그렇다는 것만 알아주면 좋겠다.
profile
아침엔 운동하고 밤엔 잠을 잔다.

1개의 댓글

comment-user-thumbnail
2022년 9월 19일

정말 뇌를 빼신 것 같군요 !

답글 달기