当前位置:主页 > 软件编程 > Python代码 >

Python随机验证码生成和join 字符串的问题解析

时间:2022-06-16 09:47:23 | 栏目:Python代码 | 点击:

函数:string.join()

Python中有join()和os.path.join()两个函数,具体作用如下:

join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
os.path.join(): 将多个路径组合后返回

一、函数说明

1、join()函数

语法:‘sep’.join(seq)

参数说明

上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串

返回值:返回一个以分隔符sep连接各个元素后生成的字符串

2、os.path.join()函数

语法: os.path.join(path1[,path2[,…]])

返回值:将多个路径组合后返回

注:第一个绝对路径之前的参数将被忽略

#对序列进行操作(分别使用' '与':'作为分隔符)
  
>>> seq1 = ['hello','good','boy','doiido']

>>> print ' '.join(seq1)
hello good boy doiido
>>> print ':'.join(seq1)
hello:good:boy:doiido
    
#对字符串进行操作
>>> seq2 = "hello good boy doiido"
>>> print ':'.join(seq2)
h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o
#对元组进行操作  
>>> seq3 = ('hello','good','boy','doiido')
>>> print ':'.join(seq3)
#对字典进行操作
>>> seq4 = {'hello':1,'good':2,'boy':3,'doiido':4}
>>> print ':'.join(seq4)
boy:good:doiido:hello
#合并目录  
>>> import os
>>> os.path.join('/hello/','good/boy/','doiido')
'/hello/good/boy/doiido'

随机验证码生成

import random
li = []
for i  in range(6):
    r = random.randrange(0,5)
    print(r)
    if r == 2 or r ==4:
        num = random.randrange(0,10)
        li.append(str(num))
    else:
        tmp = random.randrange(65,91)
        c = chr(tmp)
        li.append(c)

    
print(li)
re = "".join(li)    
print(re)

补充介绍下面看下python生成随机验证码

思路:

1、新增一个空列表

2、把ASCII表的字符添加到空列表

3、从列表中生成6个随机数

4、把生成的列表拼接成字符串,输出即可

import random,string
#方法1
li_code = []
for i in range(65,91):#大写字母A-Z
    li_code.append(chr(i))
for j in range(97,123):#小写字母a-z
    li_code.append(chr(j))
for k in range(48,58):#数字0-9
    li_code.append(chr(k))
code = random.sample(li_code,6)
ran_code = "".join(code)
print(ran_code)
import random,string
#方法2
str1 = "0123456789"
str2 = string.ascii_letters
str3 = str1+str2
code = random.sample(str3,6)
l_code = "".join(code)
print(l_code)
import random,string
#方法3
s_code = string.ascii_letters+string.digits
code = random.sample(s_code,6)
print("".join(code))

您可能感兴趣的文章:

相关文章