一、stirng.punctuation
1) stirng.punctuation
python3中,string.punctuation是用作字符串常量的初始化字符,它給出所有的標點集
2) 用法
使用stirng.punctuation,先確保導入字符串函數
import string
語法: string.punctuation
參數:不帶任何參數,因為它不是函數。
返回:返回所有標點集。
3)實例
# 導入字符串庫功能 import string # 將標點集存儲在可變結果中 str = string.punctuation # 打印標點符號值 print(str)
4)輸出
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
二、choice()方法
1)choice函數
choice()方法返回一個列表、元祖或字符串的隨機項
2)用法
choice()方法需要導入random模塊,通過random模塊靜態對象調用該方法
import random
random.choice(seq)
其中seq-可以是一個列表、元祖或字符串
3)實例
import random str = "fdofsadf4%%%%@@@王" print("打印字符:", random.choice(str_1))
4)輸出
打印字符: %
三、''.join()方法
1)''.join()函數
將序列中的元素以指定的字符連接生成一個新的字符串
2)語法
語法: ‘sep’.join(seq)
參數說明:
sep:分隔符。可以為空
seq:要連接的元素序列、字符串、元組、字典
3)實例
a="abcd" list =['a','b','c'] tuple = (('a','b','c')) dict = {'a':1,'b':2,'c':3,'d':4} print(''.join(a)) print(','.join(a)) print('|'.join(list)) print('*'.join(tuple)) print('&'.join(dict))
4)輸出
abcd a,b,c,d a|b|c a*b*c a&b&c&d
四、生成隨機特殊字符串方法
基於上述函數及方法,定義生成隨機特殊字符串的函數,且可定義字符串的長度
def get_random_special(num,str_range=None): """ 生成隨機特殊字符串, num:產生隨機字符串的長度, 返回隨機字符串,str類型 """ if str_range is None: str_range = string.punctuation return (''.join(random.choice(str_range) for _ in range(int( num))))
PS: for _ in range(int(num))中)_占位符表示不在意變量的值,只是用於循環遍歷num次