如何在 Python 中获取字符串的最后 N 个字符
介绍
在本文中,您将了解 3 种不同的方式在 Python 中打印字符串的最后 N 个字符。
Python
Python 是一种解释性的、高级的、通用的编程语言,由 Guido van Rossum 创建并于 1991 年首次发布。他开始 Python 作为一个爱好项目,让他在圣诞节前后的一周内保持忙碌。它的名字来源于英国喜剧剧团巨蟒的名字。它用于:
- 软件开发
- Web开发
- 系统脚本
- 数学
要了解如何使用 Python 编程,请访问Python 基础知识。
Python字符串
String 是一个字节数组,表示 Python 中的 Unicode 字符。Python 不支持字符数据类型。单个字符也可用作字符串。Python 支持在单引号 (”) 和双引号 (“”) 内写入字符串。
查找字符串的最后 N 个字符
为了理解这些概念,我将使用一个演示字符串“C# Corner”。给定的字符串以下列方式在内存中表示:

字符串切片
切片意味着砍掉任何东西,而字符串切片意味着提取字符串的所需部分并打印出来。下面给出了演示字符串的内存表示以及索引值。

从 0 到 4 的索引称为正索引或默认索引。正索引总是从零开始。
从 -5 到 -1 的索引称为负索引。负索引总是从 -1 开始并上升到下限;即减去字符串的长度加1,即“-(len(string)+1)”。负索引用于以相反的顺序获取字符串。
打印字符串的最后一个字符
方法 1:使用切片字符串(Slicing )
在这种方法中,我们将使用负切片(slicing ),即我们将打印存储在演示字符串 -1 索引处的值。
str = "C# Corner"
print(str[-1])
输出将是:r
打印字符串最后一个元素的另一种方法是
str = "C# Corner"
print(str[-1::]) # or print(str[-1:])
同样,我们可以通过以下逻辑打印最后2个元素
str = "C# Corner"
print(str[-2::]) # or print(str[-2:])
输出将是:er
以同样的方式,您可以打印一个字符串的最后 N 个字符。
方法 2:使用反转字符串
这涉及反转字符串,然后使用正切片。要了解该方法,让我们首先看看反转字符串的各种方法。
1. 使用字符串切片
string = "C# Corner"
print ("The original string is : ",end="")
print (string)
print ("The reversed string(using loops) is : ",end="")
print (string[::-1])
在上面的代码中,我们使用了切片的概念,其中“string[::-1]”意味着我们必须打印从“negative one”索引开始的整个字符串。
2. 使用循环
def reverse(s):
_str = ""
for i in s:
_str = i + _str
return _str
string = "C# Corner"
print ("The original string is : ",end="")
print (string)
print ("The reversed string(using loops) is : ",end="")
print (reverse(string))
在上面的代码中,我们使用了我们通常与回文检查一起使用的概念。这里我们取一个空字符串,从最后一个字符开始一个一个地添加每个字符。
3. 使用递归
def reverse(s):
if len(s) == 0:
return s
else:
return reverse(s[1:]) + s[0]
_str = "C# Corner"
print ("The original string is : ",end="")
print (_str)
print ("The reversed string(using recursion) is : ",end="")
print (reverse(_str))
在上面的代码中,我们使用递归的概念,从最后一个字符开始,一个一个地打印所有字符。
4. 使用“反转”
def reverse(string):
string = "".join(reversed(string))
return string
_str = "C# Corner"
print ("The original string is : ",end="")
print (_str)
print ("The reversed string(using reversed) is : ",end="")
print (reverse(_str))
在上面的代码中,我们使用了字符串“join()”方法,该方法执行字符串连接,而reversed()用于返回给定序列的反向迭代器。
您可以使用上述任何一种方法来反转字符串,我使用字符串切片方法来反转字符串。
在下面的代码中,我们反转字符串,然后打印反转字符串的索引零。
str = "C# Corner"
print(str[::-1][0]) # or print(str[::-1][0:1])
输出将是:r
与打印字符串的最后 2 个字符类似,我们可以执行以下操作:
str = "C# Corner"
print(str[::-1][0:2])
输出将是:re
以同样的方式,您可以打印字符串的最后 N 个字符。
方法三:使用字符串的长度
在这个方法中,我们将首先找到字符串的长度,然后我们将打印字符串的最后 N 个字符。
_str = "C# Corner"
print(_str[len(_str)-1])
在上面的代码中,我们通过打印字符串的长度减 1 值来打印字符串的最后一个字符。
_str = "C# Corner"
N_of_char = 2
for i in range(0,N_of_char):
print(_str[len(_str)-(i+1)],end="")
您可以使用上面的示例打印任意数量的最后一个字符,您只需要将“N_of_char”值更改为您想要的值。我想打印最后 2 个字符,所以我将该值设置为 2。
结论
在本文中,我们讨论了在 Python 中打印字符串的最后 N 个字符的 3 种方法。请尝试这些方法并评论您对本文有用的看法。
常见问题FAQ
- 程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
- 请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!