1

最近有想Python去生成一个txt,包含由常规字符组成的字符串

使用itertools试了一下,写了一个按顺序生成六位字符串保存在txt中的示例:

# This is a sample Python script.

# Press Shift+F10 to execute it or replace it with your code.
# Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.
# -*- coding:utf-8 -*-
import  itertools as its
words = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890~!@#$%^&*"
r = its.product(words, repeat=6)

j= 1
for i in r:
    j +=1
    if j == 1000:
        break
    dic = open('h2bcc.txt', 'a')
    dic.write("".join(i))
    dic.write('\n')
    dic.close()

在上面的代码中控制的生成的条数,如果不控制txt会很卡会卡死

优化的方法,可以控制每个txt中保存的字付串的条数

Python中itertools是啥?

itertools是一个Python中的标准库,它可以创建高效迭代器

引入标准库 :

import itertools

itertools 创建迭代器有3类:

无限迭代器 Infinite Iterators
终止于最短输入序列的迭代器 Iterators terminating on the shortest input sequence
组合生成器 Combinatoric generators

python有3个无限迭代,分别为count(),cycle(),repeat()

count(start[, step]) 无限计数递增迭代,参数start起始数据,可选参数step为步长
cycle(p) 无限循环周期性迭代,参数p,周期性循环p序列的数据
repeat(elem [,n]) 重复迭代,对elem重复迭代n次

相关标签:python python生成txt 密码
  • 马, 小马 - 2021年12月28日

    还可以,勉勉强强

期待你一针见血的评论,Come on!