(Python作业来自qq群:651707058,欢迎任何程度的Python学习者)
凯撒密码的加密方法是:每当你想要加密一段文字时,你需要选择一个移位值 S,
它是一个0到25之间的整数。然后,你把文字中的每一个字母用S个位置之后的字母
替换(假设S=1,那么A就用B替换)。如果位置超过了Z,那么就要从A开始继续数。
例如:密文: Ifsf up tubz 移位值s=25
输出的明文为:Here to stay
程序要求输入一段明文后,再输入一个移位值,输出相应的凯撒密码。
def Caesar_code(L,s):
if not isinstance(L,str): #类型检查
raise TypeError('"{n}" must be str')
L1=''
for i in L:
a=ord(i)
b=a+int(s)
if i==' ':
L1+=' '
elif ord('A')<=a<=ord('Z'):
if b>ord('Z'):
b=ord('A')+(b-ord('Z'))-1
else:
L1 += chr(b)
else:
if b>ord('z'):
b=ord('a')+(b-ord('z'))-1
else:
L1+=chr(b)
return L1
print(Caesar_code('Ifsf up tubz',25))
统计一段话中出现最多次数的单词,单词一样,大小写不同视为同一个单词
输出出现次数最多的单词的时候,将其变成小写输出
例如:
Here is a line like sparkling wine
Line up fast or be the last
输出:line
from collections import Counter
import re
L=' Here is a line like sparkling wine ' \
'Line up fast or be the last'
L1=re.findall(r'[a-zA-Z]+',L)
L2=[]
for i in range(0,len(L1)):
L2.append(L1[i].lower())
L3=Counter(L2).items()
for j in L3:
result=sorted(L3,key=lambda j:j[1])
print(result[-1][0])
要求生成一个4位验证码,每一位都有可能是数字、大写字母、小写字母,当生成一个验证码后。
程序提示输入验证码。用户输入后,程序可以判断输入的验证码的正误,其中验证码验证不分字母大小写。
例如:生成的验证码为:X8p7
请输入验证码:x8P7
输出:验证成功
例如:生成的验证码为:X8p7
请输入验证码:x8L7
输出:验证失败
import random
L=[]
def validate_code():
s = ''
for i in range(0,10):
L.append(i)
for j in range(65,91):
L.append(chr(j))
for z in range(97,123):
L.append(chr(z))
validate=random.sample(L,4)
for k in validate:
s+=str(k)
print(s)
code=input('请输入验证码:')
if code.lower()==s.lower():
print('验证成功')
else:
print('验证失败')
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入: [“flower”,”flow”,”flight”]
输出: “fl”
示例 2:
输入: [“dog”,”racecar”,”car”]
输出: “”
解释: 输入不存在公共前缀。
def longestCommonPrefix(str_list):
'''
:param str_list:传入的是元素为字符串的列表
:return: 最长公共前缀
'''
len_list = [len(w) for w in str_list]
len_min = min(len_list)
perfix = ''
for i in range(1, len_min + 1):
for j in range(1, len(str_list)):
if str_list[j][0:i] != str_list[j - 1][0:i]:
return perfix
perfix = str_list[0][0:i]
return perfix
print(longestCommonPrefix(["flower","flow","flight"]))
以上是我写的代码,不太好,下面可以参考一个大佬的代码:
https://blog.csdn.net/tobe_numberone/article/details/81448359