以下是生成随机中国手机号码的Python代码:
python
import random
def generate_phone_number():
# 中国手机号以1开头,第二位通常是3-9
first_digit = '1'
second_digit = str(random.choice([3, 4, 5, 6, 7, 8, 9]))
# 生成剩余的9位数字
remaining_digits = ''.join(str(random.randint(0, 9)) for _ in range(9))
# 组合成完整的手机号
phone_number = first_digit + second_digit + remaining_digits
return phone_number
# 生成并打印随机手机号
phone = generate_phone_number()
print(f"随机手机号: {phone}")
更精确的版本(考虑实际号段)
如果需要更符合实际号段分布的手机号,可以使用以下代码:
python
import random
def generate_realistic_phone_number():
# 常见手机号前缀
prefixes = [
'130', '131', '132', '133', '134', '135', '136', '137', '138', '139',
'150', '151', '152', '153', '155', '156', '157', '158', '159',
'170', '171', '173', '175', '176', '177', '178',
'180', '181', '182', '183', '184', '185', '186', '187', '188', '189',
'198', '199'
]
# 随机选择一个前缀
prefix = random.choice(prefixes)
# 生成剩余的8位数字
suffix = ''.join(str(random.randint(0, 9)) for _ in range(8))
# 组合成完整的手机号
phone_number = prefix + suffix
return phone_number
# 生成并打印随机手机号
phone = generate_realistic_phone_number()
print(f"随机手机号: {phone}")
批量生成手机号
如果需要生成多个手机号:
python
# 生成10个随机手机号
for i in range(10):
phone = generate_realistic_phone_number()
print(f"手机号 {i+1}: {phone}")
注意事项
- 这些代码生成的是符合中国手机号格式的随机号码,但不一定是真实存在的号码
- 如果需要验证手机号的真实性,需要调用运营商的API或使用专门的验证服务
- 生成的手机号仅供测试使用,请勿用于非法用途
您可以根据需要选择简单版本或更精确的版本。第二种方法生成的手机号更符合实际号段分布。