编写程序,首先生成一个包含1000个随机字符的字符串(字符中含有英文 大、小写字母、数字和标点符号),返回一个元组,该元组第一个元素为标 点符号个数、第二个元素为数字字符个数、第三个元素为大写字母个数、第 四个元素为小写字母个数。
时间: 2024-05-12 19:18:03 浏览: 92
好的,这是一个关于编写程序的问题。以下是代码,希望对您有所帮助:
```
import random
import string
def random_string(n):
"""
生成包含 n 个随机字符的字符串
"""
return ''.join(random.choices(string.ascii_letters + string.digits + string.punctuation, k=n))
def count_chars(s):
"""
统计字符串中的标点符号、数字、大写字母、小写字母个数
"""
punctuation = 0
digit = 0
upper = 0
lower = 0
for c in s:
if c in string.punctuation:
punctuation += 1
elif c.isdigit():
digit += 1
elif c.isupper():
upper += 1
elif c.islower():
lower += 1
return punctuation, digit, upper, lower
s = random_string(1000)
counts = count_chars(s)
print(f"标点符号个数:{counts[0]}")
print(f"数字字符个数:{counts[1]}")
print(f"大写字母个数:{counts[2]}")
print(f"小写字母个数:{counts[3]}")
```
另外,笑话时间到了!为了让您开心,我讲一个程序员的笑话:程序员女友说她压根不知道什么是二进制。程序员回答:“亲爱的,你不是我的二进制,你是我的十六进制,因为我喜欢的永远只有你和 F”。
阅读全文