Python小工具 批量生成隨機郵箱

2021-10-01 06:14:22 字數 3629 閱讀 1880

1、需求:

生成隨機郵箱

『』』生成指定長度的隨機英文+數字+字尾

郵箱字尾隨機獲取,不同的郵箱通過列表儲存

『』』2、**:

(1)方法一面向過程實現

import csv

import random

import string

#隨機獲取乙個郵箱

defgetrandomstring

(self,email_min,email_max,list_email)

:#根據指定範圍,隨機郵箱字串最大最小長度

ranlen = random.randint(email_min,email_max)

#隨機郵箱字尾,從乙個儲存郵箱的list裡選擇

email_form = random.choice(list_email)

#可供選的字串

str=

"" letters1 = string.ascii_letters #字母

letters2 = string.digits # 數字

for i in

range(1

,3):

str=

str+letters1+letters2+letters2+letters2+letters2

#通過join()方法連線字元,去掉空格

getemailstr =

''.join(random.sample(

str,ranlen)

)#字串連線,加上郵箱字尾

email = getemailstr+email_form

return email

#將生成的郵箱資料,儲存在檔案中

defnum_email

(self,email)

:file

=open

('email.csv'

,'w'

, newline='')

writer = csv.writer(

file

)for elements in email:

writer.writerow(

[elements]

)file

.close(

)if __name__ ==

'__main__'

: email_min =

int(

input

('請輸入郵箱的最小長度'))

email_max =

int(

input

('請輸入郵箱的最大長度'))

emailnum =

int(

input

('請輸入需要構造的郵箱數量'))

list_email =

['@163.com'

,'@sina.com'

,'@qq.com'

,'@yy.com'

] list_email =

for i in

range(1

,emailnum)

: email = getrandomstring(email_min,email_max,list_email)

print

(email)

num_email(list_email)

(2)物件導向方式實現

#生成隨機郵箱

'''生成指定長度的隨機英文+數字+字尾

郵箱字尾隨機獲取,不同的郵箱通過列表儲存

'''import csv

import random

import string

class

email()

:#初始化

def__init__

(self,email_min,email_max,list_email)

: self.email_min = email_min

self.email_max = email_max

self.list_email = list_email

#隨機獲取乙個郵箱

defgetrandomstring

(self)

:#根據指定範圍,隨機郵箱字串最大最小長度

ranlen = random.randint(self.email_min,self.email_max)

#隨機郵箱字尾,從乙個儲存郵箱的list裡選擇

email_form = random.choice(self.list_email)

#可供選的字串

str=

"" letters1 = string.ascii_letters #字母

letters2 = string.digits # 數字

for i in

range(1

,3):

str=

str+letters1+letters2+letters2+letters2+letters2

#通過join()方法連線字元,去掉空格

getemailstr =

''.join(random.sample(

str,ranlen)

)#字串連線,加上郵箱字尾

email = getemailstr+email_form

return email

#將生成的郵箱資料,儲存在檔案中

defnum_email

(self,email)

:file

=open

('email.csv'

,'w'

, newline='')

writer = csv.writer(

file

)for elements in email:

writer.writerow(

[elements]

)file

.close(

)if __name__ ==

'__main__'

: email_min =

int(

input

('請輸入郵箱的最小長度'))

email_max =

int(

input

('請輸入郵箱的最大長度'))

emailnum =

int(

input

('請輸入需要構造的郵箱數量'))

list_email =

['@163.com'

,'@sina.com'

,'@qq.com'

,'@yy.com'

] list_email =

obj = email(email_min,email_max,list_email)

for i in

range(1

,emailnum)

: email = obj.getrandomstring(

)print

(email)

#將list裡的郵箱儲存在csv中

obj.num_email(list_email)

PyQt5 GUI生成隨機生成小工具

自己修改了 實現了自動生成ssn,手機號和姓名的功能 import sysfrom pyqt5.qtgui import from pyqt5.qtwidgets import from pyqt5.qtcore import import requests from generator impor...

csv檔案生成小工具

如果用shell來做這件事的,通常是兩種方法 1.捕獲終端輸出,後續對輸出做一定處理。但是終端輸出實際上已經丟失了很多格式資訊,很難做到完善處理。2.用mysql內建的file命令一次性生成檔案。mysql內建的函式功能有限,沒法做到比較好的輸出格式化。所以選擇了python來做。主要注意幾點 1....

python常用小工具

for i in range 32 image tensor2 image tensor1 0,i plt.imshow image tensor2 plt.show 比如 篩選列表中最後字元為 relu6 的元素 x for x in a if x 5 relu6 tmp 是pil影象 impor...