首页
学习
活动
专区
工具
TVP
发布

python之字符串逆序

python之字符串逆序

1.贴题

题目来自PythonTip

给你一个字符串 a, 请你输出逆序之后的a。

例如:a=‘xydz’

则输出:zdyx

2.说明

思路基本分为两种,

一是编写循环,每次取字符串的一个字符,从后往前取,可以直接输出,也可以添加到新字符串最后一起输出。

二是利用切片,一行代码完成。

3.参考代码

1.循环方法

2.切片方法

4.其他写法

1.先把字符串转化为列表,然后倒序,再循环输出

2.创建新的空字符串,循环将每一个字符添加到现有字符串的最前面,最后输出

3.同样一行搞定的其他写法之一:先反转再连接

4.之二:先逆向排序再连接(如果题目给出的字符串不是有序的,此代码会出错)

5.注意点和坑

因为PythonTip只支持python2,所以使用print函数里面如果带了sep或者end的参数会报错,解决方法是在最前面加上

以为这个会错,结果执行了一下发现是对的。因为虽然字符串是不可变的,不能改变某一个字符,但是重新赋值是可以的。

6.继续探究

1.关于切片的逆序输出

先考虑以下代码的输出是什么

考虑好了看答案

所以如果要进行逆序输出可以有很多种写法,上面的四种写法中除了第三种都可以正确输出。

原因其实是python有两种索引方法,一种是0开始的正数索引,另一种是-1开始的复数索引,只要采用其中任何一套索引都可以完成切片行为。

拓展知识

python六种基本数据类型比较

总结

去重用set

字典内无序排列,按key访问

可变就不可哈希,不可变就可哈希

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180425G0VBAT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券