第六章例题

随机密码生成。编写程序在26个字母大小写和9个数字组成的列表中随机生成10个8位数密码。

import random
a = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
b = list(a)
c=''
for i in range(10):
    c += "\n"
    for i in range(8):
        c += b[random.randint(0,61)]
print(c)

利用random库

重复元素判断。编写一个函数,接收列表作为参数,如果一个元素在列表中出现了不止一次,则返回True,但不改变原来列表的值。同时编写调用这个函数和输出测试结果的程序。

def chachong(c):
    b=c.split(" ")
    b = [int(b[i]) for i in range(len(b))]
    for i in range(len(b)):
        a = b[i]
        for j in range(i+1,len(b)):
            if a == b[j]:
                return True
            
        break



print('请输入数字: (用空格隔开)')
a = input('')
print(chachong(a))

用切片然后转化成列表来处理输入的字符串

重复元素判定续。利用集合的无重复性改编上一个程序,获得一个更快更简洁的版本。

def chachong(c):
    b=c.split(" ")
    b = [int(b[i]) for i in range(len(b))]
    a = set(b)
    if len(a) != len(b):
        return True
    else:
        return False


print('请输入数字: (用空格隔开)')
a = input('')

用set函数去重后判断长短

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值