복붙노트

[PYTHON] 주어진 패턴의 임의의 텍스트 문자열 생성하기

PYTHON

주어진 패턴의 임의의 텍스트 문자열 생성하기

특정 형식의 임의의 텍스트 문자열을 생성해야합니다. 파이썬에서 코드를 작성할 수 있도록 몇 가지 아이디어를 원하십니까? 형식은 <8 자리 숫자> <15 자 문자열>입니다.

해결법

  1. ==============================

    1.

    #!/usr/bin/python
    
    import random
    import string
    
    digits = "".join( [random.choice(string.digits) for i in xrange(8)] )
    chars = "".join( [random.choice(string.letters) for i in xrange(15)] )
    print digits + chars
    

    편집 : random.choice randint ()보다 사용하는 아이디어를 좋아해 그래서 반영하도록 코드를 업데이트했습니다.

    주 : 이것은 소문자와 대문자가 필요하다고 가정합니다. 소문자 인 경우에만 두 번째 목록 이해력을 다음과 같이 변경하십시오.

    chars = "".join( [random.choice(string.letters[:26]) for i in xrange(15)] )
    

    당연히 대문자에 대해서만 그 주위를 뒤집을 수 있으므로 슬라이스는 다른 방법 대신 [26 :]입니다.

  2. ==============================

    2.예를보십시오 - 레시피 59873 : 임의 암호 생성.

    예를보십시오 - 레시피 59873 : 임의 암호 생성.

    제조법을 바탕으로 다음 질문에 대한 해결책을 제시합니다.

    from random import choice
    import string
    
    def GenPasswd2(length=8, chars=string.letters + string.digits):
        return ''.join([choice(chars) for i in range(length)])
    
    >>> GenPasswd2(8,string.digits) + GenPasswd2(15,string.ascii_letters)
    '28605495YHlCJfMKpRPGyAw'
    >>> 
    
  3. ==============================

    3.random.sample은 다른 선택입니다. 차이점은 python.org 문서에서 볼 수 있듯이 random.sample 샘플을 대체 할 필요가 없다는 것입니다. 따라서 random.sample (string.letters, 53)은 ValueError가됩니다. 그런 다음 8 자릿수와 15 자의 임의의 문자열을 생성하려면 다음과 같이 작성합니다.

    random.sample은 다른 선택입니다. 차이점은 python.org 문서에서 볼 수 있듯이 random.sample 샘플을 대체 할 필요가 없다는 것입니다. 따라서 random.sample (string.letters, 53)은 ValueError가됩니다. 그런 다음 8 자릿수와 15 자의 임의의 문자열을 생성하려면 다음과 같이 작성합니다.

    import random, string
    
    digits = ''.join(random.sample(string.digits, 8))
    chars = ''.join(random.sample(string.letters, 15))
    
  4. ==============================

    4.다음은 더 간단한 버전입니다.

    다음은 더 간단한 버전입니다.

    import random
    import string
    
    digits = "".join( [random.choice(string.digits+string.letters) for i in   xrange(10)] )
    print digits
    
  5. from https://stackoverflow.com/questions/367586/generating-random-text-strings-of-a-given-pattern by cc-by-sa and MIT license