-
2022-03-15 11:43:24
字符串切片主要受步长值的影响,所以本文重点介绍了步长值对字符串切片的变化。
字符串切片的步长值默认是正数1.
一)步长值为正数:
1、start为空默认为负无穷,end为空默认为正无穷。巧记为[负数:正:正]。
2、对应的元素start>end时,字符串切片结果为空。
3、取元素的顺序是从左向右。
二)步长值为负数时:
1、start为空默认为正无穷,end为空默认为负无穷。巧记为[正:负:负]。
2、对应的元素start<end时,字符串切片结果为空。
3、取元素的顺序是从右向左。
三)案例:
string = '0123456789' # 步长值为正,start为空默认为负无穷,end为空默认为正无穷 [负数:正:正] start>end为空 从左向右取元素 # 步长值为负,start为空默认为正无穷,end为空默认为负无穷 [正:负:负] start<end为空 从右向左取元素 print(f"string[3:]:{string[3:]}") # [3,正无穷) 3456789 print(f"string[4:2]:{string[4:2]}") # [4,2) 步长值为正,start>end时,结果为空 print(f"string[3::-1]:{string[3::-1]}") # [3,负无穷) 3210 print(f"string[:-5]:{string[:-5]}") # [正无穷,-5对应的元素) 01234 print(f"string[-10:-5:-1]:{string[-10:-5:-1]}") # 步长值为负, start<end为空 print(f"string[:-5:-1]:{string[:-5:-1]}") # [正无穷到-5对应的元素) 9876 print(f"string[::-1]:{string[::-1]}") # 字符串反转 9876543210 print(f"string[::-2]:{string[::-2]}") # 步长为2,从右向左取元素 97531
更多相关内容 -
Python字符串切片操作知识详解
2020-12-24 09:11:08一:取字符串中第几个字符 print “Hello”[0] 表示输出字符串中第一个字符 print “Hello”[-1] 表示输出字符串中最后一个字符 二:字符串分割 print “Hello”[1:3] #第一个参数表示原来字符串中的下表 #第二... -
python 字符串切片
2022-03-31 11:05:08python 字符串切片1. 字符串的索引
字符串的索引从前往后是从0开始计数,从后往前是从-1开始依次 -1
2.字符串切片方法
语法格式 str[beginIndex:endIndex:step] 取值结果: [begin,end) / 含头不含尾
步长不设置时默认为1
3.切片
① 取x-y位置的字符串: 从中间开始,中间结束
因为字符串的索引是从0开始,索引如果要取到x-y位置的字符串,那么开始的索引就是x-1
字符串切片时切片的结果是含头不含尾,那么结束的索引就是y(索引从0开始)
str1 = 'this is uesd to test substring' # 1.取某个位置到某个位置的值 从中间开始,中间结束 print("从str1中取第四个到第五个字符,结果:", str1[3:5])
② 取x-y位置的字符串: 取到最后一位
如果知道字符串的长度时,可以直接指定字符串的长度,然后得到结果
如果不知道字符串的长度,也可以直接不填[x-1:] 来获得取值结果
# 2.取某个位置到某个位置的值 取到结尾 print("从str1中取第二个到第最后一个字符,结果:", str1[1:len(str1)]) print("从str1中取第二个到第最后一个字符,结果:", str1[1:])
③ 取x-y位置的字符串: 从头开始
从头开始取同取到最后一位,如果beginIndex直接不填 [:y] ,就是从第一位开始
或者beginIndex位置填0
# 3.取某个位置到某个位置的值 从头开始 print("从str1中取第一个到第三个字符,结果:", str1[0:3]) print("从str1中取第一个到第三个字符,结果:", str1[:3])
④ 取某个字符串 从头到尾
# 4.取某个字符串 从头到尾 print("从str1中取从头到尾的数值,结果:", str1[0:]) print("从str1中取从头到尾的数值,结果:", str1[:])
⑤ 取某个字符串 中间隔一位取值
切片-步长取值的顺序为 :
1)获取开始索引位置的值
2)按照步长取得下一位值,直到结束
如果想隔一位,将步长设置成2即可
# 5.隔一个字符取值 print("从str1中取从头到尾的数值", str1[::]) print("从str1中取从头到尾的数值,中间跳1个字符,结果:", str1[::2])
⑥ 倒序取值
同第五步,只需要将开始的值设置成最后一位,结束的值设置成第一位即可
因为取值结果含头不含尾,此时结束的值不能设置为0,需要设置为空才能取到最后一个值,开始的值可以设置为-1
# 6.从后开始往前取值 print("str1字符串反转,结果:", str1[::-1]) print("str1字符串反转,结果:", str1[-1::-1])
⑦ 从后开始往前取值,中间隔一个字符
同第六步,只需要将步长设置为-2即可
# 7.从后开始往前取值,隔一个字符 print("str1从后开始往前取值,隔一个字符,结果:", str1[-1::-2]) print("str1从后开始往前取值,隔一个字符,结果:", str1[::-2])
⑧ 得到某个位置的值
可以从前,也可以从后取
# 8.取从头开始计算某个字符的值 print("str1的第五个字符", str1[4]) # 9.取从尾开始计算某个字符的值 print("str1的倒数第三个字符", str1[-3])
-
python 字符串操作(一)索引 切片
2020-12-21 09:16:21字符串定义 字符串是python中最常见的数据类型,创建字符串只需用引号括起来分配给一个...字符串操作② 索引 切片 索引,指字符串的位置,可以通过索引来提取字符串中的元素,python中,索引是从0开始由左到右,如果由 -
Python 字符串切片
2020-02-19 17:15:34Python 字符串切片SummaryExamples Summary 切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分)。 使用一对方括号、起始偏移量start、终止偏移量end 以及可选的步长step 来定义一个分片。 # 格式 ...Summary
切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分)。
使用一对方括号、起始偏移量start、终止偏移量end 以及可选的步长step 来定义一个分片。
# 格式 [start:end:step] # 起始偏移量:start # 终止偏移量:end # 可选步长:step [:] # 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串 [start:] # 从 start 提取到结尾 [:end] # 从开头提取到 end [start:end] # 从 start 提取到 end [start:end:step] # 从 start 提取到 end,每 step 个字符提取 1 个 # 左侧第一个字符的位置/偏移量为0,右侧最后一个字符的位置/偏移量为-1 # 当步长设置为负数时,表示从右向左取字符串,步长的绝对值大于1表示间隔的取数 # 当步长设置为负数时,开始的部分那个截取下标也要从负数计算,或者start必须大于结束的下标,因为它是从右开始的截取的
Examples
num_str = '0123456789' print(num_str) # Computationary Results 0123456789
print(num_str[:], num_str[0:3], num_str[0:-1], num_str[0:-2], num_str[3:-3]) # Computationary Results 0123456789 012 012345678 01234567 3456
print(num_str[0:], num_str[1:], num_str[2:], num_str[-1:], num_str[-2:]) # Computationary Results 0123456789 123456789 23456789 9 89
print(num_str[::2], num_str[1:5:2], num_str[::3]) # Computationary Results 02468 13 0369
print(num_str[::-2], '*****', num_str[1:5:-2], '*****', num_str[::-3]) # Computationary Results 97531 ***** ***** 9630
print(num_str[::-1]) # Computationary Results 9876543210
-
详解Python字符串切片
2020-09-19 09:19:36主要介绍了Python字符串切片,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 -
python字符串 切片_Python切片字符串
2021-03-06 02:08:07python字符串 切片Python string supports slicing to create substring. Note that Python string is immutable, slicing creates a new substring from the source string and original string remains unchanged....python字符串 切片
Python string supports slicing to create substring. Note that Python string is immutable, slicing creates a new substring from the source string and original string remains unchanged.
Python字符串支持切片以创建子字符串。 请注意,Python字符串是不可变的,切片会根据源字符串创建一个新的子字符串,而原始字符串将保持不变。
Python切片字符串 (Python slice string)
Python slice string syntax is:
Python slice字符串语法为:
str_object[start_pos:end_pos:step]
The slicing starts with the start_pos index (included) and ends at end_pos index (excluded). The step parameter is used to specify the steps to take from start to end index.
切片以start_pos索引(包括)开始,以end_pos索引(排除)结束。 step参数用于指定从开始到结束索引执行的步骤。
Python String slicing always follows this rule: s[:i] + s[i:] == s for any index ‘i’.
Python字符串切片始终遵循以下规则: s [:i] + s [i:] == s用于任何索引'i'。
All these parameters are optional – start_pos default value is 0, the end_pos default value is the length of string and step default value is 1.
所有这些参数都是可选的– start_pos默认值为0,end_pos默认值为字符串的长度,step默认值为1。
Let’s look at some simple examples of string slice function to create substring.
让我们看一些创建子字符串的字符串切片函数的简单示例。
s = 'HelloWorld'
print(s[:])
print(s[::])
Output:
输出:
HelloWorld
HelloWorld
Note that since none of the slicing parameters were provided, the substring is equal to the original string.
请注意,由于未提供任何切片参数,因此子字符串等于原始字符串。
Let’s look at some more examples of slicing a string.
让我们看一下切片字符串的更多示例。
s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)
third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)
Output:
输出:
Hello
llo
Note that index value starts from 0, so start_pos 2 refers to the third character in the string.
请注意,索引值从0开始,因此start_pos 2引用字符串中的第三个字符。
使用切片反转字符串 (Reverse a String using Slicing)
We can reverse a string using slicing by providing the step value as -1.
通过将步进值设置为-1,我们可以使用切片来反转字符串。
s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)
Output: dlroWolleH
输出: dlroWolleH
Let’s look at some other examples of using steps and negative index values.
让我们看看其他使用步骤和负索引值的示例。
s1 = s[2:8:2]
print(s1)
Output: loo
输出: loo
Here the substring contains characters from indexes 2,4 and 6.
这里的子字符串包含来自索引2,4和6的字符。
s1 = s[8:1:-1]
print(s1)
Output: lroWoll
输出: lroWoll
Here the index values are taken from end to start. The substring is made from indexes 1 to 7 from end to start.
这里的索引值是从头到尾的。 子字符串从头到尾由索引1到7组成。
s1 = s[8:1:-2]
print(s1)
Output: lool
输出: lool
Python slice works with negative indexes too, in that case, the start_pos is excluded and end_pos is included in the substring.
Python slice也可以使用负索引,在这种情况下,排除start_pos并将end_pos包括在子字符串中。
s1 = s[-4:-2]
print(s1)
Output: or
输出: or
Python string slicing handles out of range indexes gracefully.
Python字符串切片可正常处理超出范围的索引。
>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'
That’s all for python string slice function to create substring.
这就是python字符串切片函数创建子字符串的全部内容。
GitHub Repository.
GitHub存储库中检出完整的python脚本和更多Python示例。
翻译自: https://www.journaldev.com/23584/python-slice-string
python字符串 切片
-
python:字符串操作,切片、拼接
2021-01-20 02:15:55字符串切片 [M:N:K] M指的是开始位置,N是截止位置,K代表步长,MN可以不填,M不填代表从头开始,N不填代表至结尾为止; 逆序字符串的一种写法:[::-1] 字符串中的特殊字符转义 当字符串中出现一些 特殊字符,又希望... -
python 字符串 切片
2020-12-02 15:35:21####################概念######################'''int 整数str 字符串 一般不存放大量的数据bool 布尔值,用来判断。 True,Falselist 列表。存放大量数据,[]表示,里面可以放各种数据类型tuple 元祖,只读列表 ... -
Python字符串切片语法和操作【详细讲解】
2022-03-29 13:49:20字符串切片和下标一样重要,要认真学习。在Python中不仅字符串支持切片操作,后面即将学习的列表、元组同样支持切片操作。 抛出问题: str1 = 'python' # 得到整个字符串数据 print(str1) # 下标得到的是下标... -
Python字符串切片及定位详解
2021-11-30 14:22:01字符切片 str[n1:n2:n3] 表示按步长为n3(每隔...print(str[0]) # 输出字符串第一个字符 print(str[2:5]) # 输出从第三个开始到第五个的字符 print(str[2:]) # 输出从第三个开始后的所有字符 print(str[1:5:2]) # 输 -
Python字符串切片以及常见操作
2021-09-23 10:33:58一、字符串的下标输出 模拟情景有这样一个字符串:myname = “dujunyan” 1. 取myname字符串的第1个元素,并输出 2. 取myname字符串的第5个元素,并输出 3. 取myname字符串的最后一个元素,并输出 4. 取... -
python字符串 切片_用于切片字符串的Python程序
2020-07-24 10:09:58python字符串 切片Given a string and number of characters (N), we have to slice and print the starting N characters from the given string using python program. 给定一个字符串和字符数( N ),我们必须... -
Python字符串切片操作
2019-03-21 20:36:07我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1...今天恋习Python主要与大家一起谈谈Python字符串切片操作的那些事。 一、字符串的切片 ... -
Python字符串切片
2018-03-04 22:03:31在python中,我们定义好一个字符串,如下所示。在python中定义个字符串然后把它赋值给一个变量。我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始(==,我自己都觉得写的好脑残了)这个时候呢,我们... -
深入浅谈:Python字符串切片操作
2019-05-06 09:02:16我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1开始从右向左。...今天恋习Python主要与大家一起谈谈Python字符串切片操作的那些事。 一... -
如何理解python字符串切片及其原理
2019-09-12 00:05:49这两天学习python字符串切片,对于python字符串截取的顺序、输出方向和索引编号的规则的理解比较模糊!特意研究了一下总结规则并记录! 基本概念 1.python字符串里面的每一个字符元素都有一个索引编号 ! 2.索引编号有...