您的位置:首页 > 编程语言

随机生成多语言字符串的代码实现

2014-11-04 09:33 429 查看

引言:

在字符串测试,验证码生成等方面,需要随机生成指定范围的字符串,一般都是长度固定的。以下 Python 代码使用简短的几行代码,就达到了上述目的。若要想支持更多的语言,可以按照示范代码增加。各种语言的 Unicode 编码范围,请查看博文 《Unicode编码范围》。

示例代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
@author : Thomas Hu
@version: 1.0
@created: Nov 4, 2014
'''
import random

def get_random_chars(length, lang="zh"):
chars = ""
lang = lang.lower()
if lang == "zh":
charset = range(0x4e00, 0x9fa6)
elif lang == "en":
charset = range(0x41,0x5B)
charset.extend(range(0x61, 0x7B))
elif lang == "jp":
charset = range(0x3040, 0x3100)
else:
print("Unknown language \"%s\"."%(lang))
return ""
while(length > 0):
chars += unichr(random.choice(charset))
length -= 1
return chars

if __name__ == '__main__':
length = 10
langs = ["zh", "en", "jp", "korean"]
for lang in langs:
print(get_random_chars(length, lang))


输出结果:

矹笏钊遳倝扝岓樷瑄呅
ydLSRnwMwL
にぃラヾネパデヺクヵ
Unknown language "korean".
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: