智能信息采集作业ing

import random
import string

# 定义生成随机密码的函数
def generate_password(length):
    characters = string.ascii_letters + string.digits
    password = ''.join(random.choice(characters) for i in range(length))
    return password

# 生成10个包括大写字母、小写字母和数字的随机密码,每个密码8个字符
passwords = [generate_password(8) for _ in range(10)]

# 打印生成的密码
for password in passwords:
    print(password)

import random as r
k=[chr(65+i)for i in range(0,26)]
k.extend([chr(i)for i in range(97,123)])
k.extend([str(i)for i in range(0,10)])
for i in  range(10):
    print("".join(r.sample(k,8)))

 

 第一节课作业,生成随机数并删除重复数

import random

# 生成随机整数列表
random_numbers = [random.randint(1, 100) for _ in range(60)] # 这里生成了10个范围在1到100之间的随机整数

# 输出随机整数列表
print("随机整数列表:", random_numbers)

# 计算整数个数
count = len(random_numbers)
print("整数个数:", count)

# 去除重复的整数
unique_numbers = list(set(random_numbers))

# 输出去重后的整数列表
print("去重后的整数列表:", unique_numbers)

增加需求就是增加函数功能

import random
# 生成随机整数列表
random_numbers = [random.randint(1, 100) for _ in range(60)] # 这里生成了10个范围在1到100之间的随机整数

# 输出随机整数列表
print("随机整数列表:", random_numbers)

# 计算整数个数
count = len(random_numbers)
print("整数个数:", count)

# 去除重复的整数
unique_numbers = list(set(random_numbers))

#检测有几个重复的函数功能
def has_duplicates(lst):
    seen = {}
    max_count = 0
    max_element = None

    for item in lst:
        if item in seen:
            seen[item] += 1
        else:
            seen[item] = 1

    if seen[item] > max_count:
        max_count = seen[item]
        max_element = item

    if max_count > 1:
        print("重复出现次数最多的元素:", max_element)
        print("重复次数:", max_count)
        return True
    else:
        return False
    
# 输出去重后的整数列表
print("去重后的整数列表:", unique_numbers)
my_list = random_numbers
result = has_duplicates(my_list)
print("是否有重复元素:", result)

 

3*3矩阵转换为一个列表,列表只保留偶数 

matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]

# 使用列表推导来提取偶数并创建一个包含偶数的新列表
even_numbers = [num for row in matrix for num in row if num % 2 == 0]

print(even_numbers)

 ABC和123生成A1A2

str1 = "ABC"
str2 = "123"
result = ""

for char1 in str1:
    for char2 in str2:
        result += char1 + char2

print(result)

生成随机数并读写进文件里:

import random
f=open('figure.txt','w',encoding='utf-8')
n=random.randint(50,150)
for i in range(n):
    num=str(random.randrange(100,408))
    f.write(num)
    if i<n-1:
        f.write(',')
f.close()
f=open('figure.txt','r',encoding='utf-8')
p=open('figure1.txt','w',encoding='utf-8')
b=f.read()
b=b.split(',')
#b.sort()
print(b,len(b))
#print(b)
#c=set(b)
#print(c,len(c))

排队:

import random
import string
num, k = list(map(int,input().split()))
person = []

##for i in range(num):
# person.append(input().split())

person = [[''.join(random.sample(string.ascii_letters,5)),random.randrange(145,198)]for i in range(num)]
order = sorted(person, key=lambda x:(-int(x[1]),x[0]))
print(order)
hang, last = num // k,num // k + num % k
b = []
rownum = 0
for i in range(num):
    if rownum % 2 == 0:
        b.append(order[i][0])
    else:
        b.insert(0,order[i][0])
    rownum += 1
    if rownum == last:
        print(' '.join(b))
        last = hang
        b = []
        rownum = 0

1048加密?

数字 加密。首先固定一个加密用正整数 A ,对任一正整数 B ,将其每一位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余(用 J 代表 10 Q 代表 11 K 代表 12 );对偶数位,用 B 的数字减去 A 的数字,若结果小于 0 ,则再加 10 ,这里令个位为第 1 位。说明:输入一行中依次给出 A B ,均为不超过 100 位的正整数,其间以空格分隔。
a = input().split()
str1 = ""
str2 = ""
if len(a[0])>=len(a[1]):
    x = a[0]
    y = (len(a[0])-len(a[1]))*'0'+a[1]
else:
    x = a[0]
    y = a[1][len(a[1])-len(a[0]):]
    str1 = a[1][:len(a[1])-len(a[0])]
x = x[::-1]
y = y[::-1]
for i in range(len(x)):
    if (i+1)%2!=0:#奇数位
        n = (int(x[i])+int(y[i]))%13
        if n==10:
            str2 = 'J' + str2 
        elif n==11:
            str2 = 'Q' + str2
        elif n==12:
            str2 = 'K' + str2
        else:
            str2 = str(n) + str2
    else:
        n = int(y[i])-int(x[i])
        if n<0:
            n+=10
        str2 = str(n) + str2
print(str1+str2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值