温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python字符串操作方法怎么使用

发布时间:2023-04-11 15:15:22 来源:亿速云 阅读:90 作者:iii 栏目:开发技术

这篇“Python字符串操作方法怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python字符串操作方法怎么使用”文章吧。

实例1:获取星期字符串

程序读入一个表示星期几的数字(1~7),输出对应的星期字符串名称。例如,输入 3,返回“星期三”。

代码如下:

weekstr = "星期一星期二星期三星期四星期五星期六星期日"
weekid = eval(input("请输入星期数字(1~7):"))
pos = (weekid - 1) * 3                  # 获取对应星期的起始位置
print(weekstr[pos: pos+3])

程序运行结果如下:

请输入星期数字(1~7):6
星期六

题目通过在字符串中截取适当子串实现星期名称的查找。问题的关键在于找出子串的剪切位置。因为每个星期日期的缩写都由 3 个字符组成,如果知道星期日期字符串的起始位置,就能很容易获得缩写子串。 通过下面语句,可以获得从起始位置pos开始且长度为 3 的子串:

weekAbbr = weekstr[pos: pos+3]

使用字符串作为查找表的缺点是,所剪切的子字符串长度必须相同。如果各缩写表示长度不同,还需要其他语句辅助。

实例2:获取月份字符串

参考实例1,实现一个 “获取月份字符串” 的程序,要求根据1~12的数字返回对应月份的名称。

思路和实例1差不多,但是因为 十一月十二月 是 3 个字,所以我们增加了判断语句。

代码如下:

monthstr = "一月二月三月四月五月六月七月八月九月十月十一月十二月"
monthid = eval(input("请输入月份数字(1~12):"))
if monthid > 0 and monthid <= 10:      # 1月到 10 月的情况
    pos = (monthid - 1) * 2                      # 获取对应月份的起始位置
    print(monthstr[pos: pos + 2])
elif monthid == 11:                                # 11 月的情况
    pos =  (monthid - 1) * 2                      # 获取对应月份的起始位置
    print(monthstr[pos: pos + 3])
elif monthid == 12:                                 # 11 月的情况
    pos = (monthid - 1) * 2 + 1                 # 获取对应月份的起始位置
    print(monthstr[pos: pos + 3])
else:
    print("输入有误!")

程序运行结果如下:

请输入月份数字(1~12):6
六月 请输入月份数字(1~12):11
十一月 请输入月份数字(1~12):12
十二月 请输入月份数字(1~12):13
输入有误!

实例3:恺撒密码

设想在某些情况下给朋友传递字条信息,但又不希望传递中途被第三方看懂这些信息,因此需要对字条信息进行加密处理。传统加密算法很多,这里介绍一种非常简单的加密算法&mdash;&mdash;凯撒密码。 凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面第三个字符,对应关系如下:

原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

原文字符 P,其密文字符 C 满足如下条件:
C = ( P + 3 ) mod 26
解密方法反之,满足:
**P = ( C - 3 ) mod 26

假设用户可能使用的信息仅包括小写字母 a~z,则该微实例对应的加密代码如下:

plaincode = input("请输入原文:")
print("密文:")
for p in plaincode:
    if ord("a") <= ord(p) <= ord("z"):          # 判断是否在 a ~ z 之间
        print(chr(ord("a") + (ord(p) - ord("a") + 3) % 26),end='')
    else:
        print(p, end=' ')

程序运行结果如下:

请输入原文:python is an excellent language
密文:
sbwkrq lv dq hafhoohqw odqjxdjh

以上就是关于“Python字符串操作方法怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI