Python程序设计 字符串类型及其操作(二)

实验三 字符类型及其操作

1. 判断回文数

输入一个整数,判断其是否回文数。 回文数是指该数翻转后也等于该数本身。例如12321就是回文数,12345不是回文数。

判断字符串是否数字

str.isnumeric()方法可以判断字符串str是否都是数字字符。若都是数字字符,返回true,否则返回false

字符串翻转

通过字符串[::-1]的切片形式可以得到翻转的字符串 或者 通过循环,按索引从-1到-n(n为字符串长度),将对应的字符一个个连接起来得到翻转的字符串

x=input("请输入一个数字")
#代码开始
if x.isnumeric()==True:
    if x == x[::-1]:
        print("%s是回文数" % x)
    else:
        print("%s不是回文数" % x)
else:
    print("不是数字")    
#代码结束

2. 凯撒密码解密

编写一个能对凯撒密码执行解密的小程序。

凯撒密码加密的规则

凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符,对应关系如下: 原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ 密文:DEFGHIJKLMNOPQRSTUVWXYZABC

字符编码

每个字符在计算机中可以表示为一个数字,称为编码。 字符串则以编码序列方式存储在计算机中。 目前,计算机采用的重要编码是ASCII编码。 asc码表如图所示

asc码表

字符A的编码是65,字符B的编码是66,其余字母以此类推 ord(字符)函数可以返回字符的编码 chr(码值)函数可以返回编码对应的字符 例如,chr(65)是'A' ord('D')是68

mw = input("")
#代码开始
ming = ""
for i in mw:
    if "A" <= i <= "Z":
        s = chr((ord(i)-ord("A") - 3) % 26 + ord("A"))
    else:
        s = i
    ming += s
#代码结束
print(ming)

3. 简单密码加密

某用户在存储自己的密码时(密码由大小写英文字母和数字组成),为了不被别人知晓,将其按下列规则加密 数字字符0用9替换,1用8替换,2用7替换,3用6替换,4用5替换,5用4替换,6用3替换,7用2替换,8用1替换 英文字母a用z替换,b用y替换,c用x替换,d用w替换,e用v替换,f用u替换,g用n替换,以此类推 英文字母A用Z替换,B用Y替换,C用X替换,D用W替换,E用V替换,F用U替换,G用N替换,以此类推 编写程序,输入用户的密码,输出其加密后的密码 例如输入0012xyzM 输出9987cbaN

p=input("")
y=""
#代码开始
for i in p:
    if "a" <= i <= "z":
        s = chr(ord("z")-(ord(i)-ord("a")))
    elif "A" <= i <= "Z":
        s = chr(ord("Z")-(ord(i)-ord("A")))
    elif "0" <= i <= "9":
        s = str(9 - int(i))
    else:
        s = i
    y += s

#代码结束
print(y)

4. 信用卡号校验

编写一个能判断信用卡号是否合法的小程序。

信用卡号必须通过lun算法进行校验,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值