写一个函数,随机生成N条不重复的手机号

方法一:import random
def phone(count):
    results = []
    while len(results)!=count:
        starts = [138,156,130,170,188,189]
        start = random.choice(starts)
        end = random.randint(0,99999999)
        res = ‘%s%08d\n‘%(start,end)            # 格式化字符串。%08d,获取8位的数字,并换行
        if res not in results:          # 循环遍历列表,不在列表中,就添加对应的号码到列表
            results.append(res)
    with open(‘phone.txt‘,‘w‘) as fw:
        fw.writelines(results)
phone(100)
方式二:

import random
import string

def email(count):
    if count<1:
        print(‘count不能小于1‘)
        return
    emails = set()
    while len(emails)!=count:
        email_len = random.randint(6,12)
        email_end = (‘@163.com‘, ‘@qq.com‘, ‘@sina.com‘, ‘@126.com‘)
        start = random.choice(string.ascii_uppercase)+        random.choice(string.ascii_lowercase)        + random.choice(string.digits)+random.choice(string.punctuation)
        other_len  = email_len - 4 #剩余字符串的长度
        other = random.sample(string.digits+string.ascii_letters+string.punctuation,other_len)
        res = other + list(start)
        random.shuffle(res)
        end = random.choice(email_end)
        email = ‘‘.join(res)+end+‘\n‘
        emails.add(email)
    with open(‘email.txt‘,‘w‘) as fw:
        fw.writelines(emails)

原文地址:https://www.cnblogs.com/lily-20141202/p/10055187.html

时间: 2024-10-16 13:28:16

写一个函数,随机生成N条不重复的手机号的相关文章

写一个函数,输入一个数,随机生成N条邮箱

写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的手机号不能重复.邮箱前面的长度是6 - 12之间,产生的邮箱必须包含大写字母.小写字母.数字和特殊字符 import random import string def email2(count): emails = set() while len(emails)!=count: email_len = random.randint(6,12) email_end = ('@163.com', '@qq.com', '@sina.co

写一个函数实现数组中的元素随机乱序排序

//原生JS写一个函数实现一个shuffle方法,将数组中的元素随机乱序排序 var shuffle = function(arr){ var len,t,rand; for(var i =0;len = arr.length,i<len;i++){ rand = parseInt(Math.random()*len);//parseInt(Math.random()*(len-1-0)+1);或者rand = Math.floor(Math.random()*(len-1-0)+1);即Mat

PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

Python 练习 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的数,屏幕显示"太大了,请重新输入"如果小于预设的数,屏幕显示"太小了,请重新输入"如此循环,直到猜中,显示"恭喜你,猜中了!共猜了N次"N为用户猜测次数. 答案: import random def guess_number(): true_num = random.randint(1, 100) user_n

python递归练习:生成一个n级深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},写一个函数定义n级

结果#encoding = utf-8#题目:#生成一个n级深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},写一个函数定义n级a=[1,2,3,4,5,6] def fun(n,i=0,dict1={}): if i ==n-1: dict1[a[i]] = a[i+1:] if i < n-1: dict1[a[i]] = fun(n,i+1,dict1={}) #print "dict1:",dict1 return

面试题--&gt;写一个函数,返回一个数组中所有元素被第一个元素除的结果

1 package com.rui.test; 2 3 import java.util.Random; 4 5 /** 6 * @author poseidon 7 * @version 1.0 8 * @date:2015年10月25日 上午11:12:24 9 * @description: 面试题-->写一个函数,返回一个数组中所有元素被第一个元素除的结果 10 * 陷阱: 11 * 1.循环需要倒着写,为什么? 12 * 想想顺着写循环的结果,第一个元素的值会发生变化门后面再除就会有问

[编程之美]写一个函数,返回一个数组中所有元素被第一个元素除的结果

题目: 写一个函数,返回一个数组中所有元素被第一个元素除的结果: 错误的版本: void DivArray(int *array, int n) { for (int i = 0; i < n; ++i) { array[i] /= array[0]; } } 错误原因:在循环的第一步,第一个元素就变成了1,然后再用它去除以其他元素,就不符合题目要求了 改进: 1:使用其他变量保存第一个元素: void DivArray3(int *array, int n) { assert(array !=

c语言:写一个函数建立一个有3名学生数据的单向动态链表

写一个函数建立一个有3名学生数据的单向动态链表. 解:程序: #include<stdio.h> #include<stdlib.h> #define LEN sizeof(struct Student) struct Student { long num; float score; struct Student *next; }; int n; struct Student *creat(void)//定义函数返回一个指向链表头的指针 { struct Student *head

Java-集合(没做出来)第四题 (List)写一个函数reverseList,该函数能够接受一个List,然后把该List 倒序排列。 例如: List list = new ArrayList(); list.add(“Hello”); list.add(“World”); list.add(“Learn”); //此时list 为Hello World Learn reverseL

没做出来 第四题 (List)写一个函数reverseList,该函数能够接受一个List,然后把该List 倒序排列. 例如: List list = new ArrayList(); list.add(“Hello”); list.add(“World”); list.add(“Learn”); //此时list 为Hello World Learn reverseList(list); //调用reverseList 方法之后,list 为Learn World Hello package

【C语言】写一个函数,实现字符串内单词逆序

//写一个函数,实现字符串内单词逆序 //比如student a am i.逆序后i am a student. #include <stdio.h> #include <string.h> #include <assert.h> void reverse_string(char *left, char *right) //连续的字符串逆序 { char temp; while (right > left) { temp = *left; *left = *rig