pythonランダムな名前を生成

2837 ワード

csdnを見ているとjavaを使ってランダムな中国名を生成する文章を何気なく見ましたが、最近pythonを勉強しているので、私もpythonを使って遊びたいと思っていました.
コードを添付します.
# Chen yi cheng       :2019/6/14 14:09
# ???????????????????
import random


def random_name():
    #     ,       
    firstName = "                                                                                         " \
                "                                                                                   " \
                "                                                                                                    "
    #        
    # firstName = "                                                                                               " \
    #             "                                                                                                " \
    #             "                                                                                                " \
    #             "                                                                                                 " \
    #             "                                                                   "
    #        
    firstName2="                                                                                                                         "
    #     
    girl = '                                                                                                                                                     '
    #     
    boy = '                                                                                                                                                       '
    #  
    name = '                            '

    # 10%         
    if random.choice(range(100))>10:
        firstName_name =firstName[random.choice(range(len(firstName)))]
    else:
        i = random.choice(range(len(firstName2)))
        firstName_name =firstName2[i:i+2]

    sex = random.choice(range(2))
    name_1 = ""
    #          
    if sex > 0:
        girl_name = girl[random.choice(range(len(girl)))]
        if random.choice(range(2)) > 0:
            name_1 = name[random.choice(range(len(name)))]
        return firstName_name + name_1 + girl_name +"\t "
    else:
        boy_name = boy[random.choice(range(len(boy)))]
        if random.choice(range(2)) > 0:
            name_1 = name[random.choice(range(len(name)))]
        return firstName_name + name_1 + boy_name+"\t "


for i in range(100):
    print(random_name())
input()

ここで私は100個の名前を生成し(より多くの名前を生成してループを修正したい回数であればよい)、編集者が使用する姓はすべて大衆化されているため、生成された名前も比較的正常である
結果の一部:
馬公智燕女袁笑眉女文凱凝女牧興男関紅女傅仁輝男石鳳女陽夏孝彩女喩哲男関忠姫女谷梁璧女卜堅男
randomを使用していますchoice()メソッド生成乱数