Python刷题之字符串(补充)

165 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天


  • NP14 不用循环语句的重复输出

描述

牛牛正在学习Python,他想多次输出朋友的名字,但是因为还没有学习循环语句,他不知道该怎么输出,你能够帮助他将输入的朋友的名字重复输出100次吗?(提示:不可以使用循环或者递归语句,使用字符串 * 运算)

输入描述:

输入一个字符串。

输出描述:

输出重复100次之后的字符串,字符串之间没有间隔。

image.png

代码如下:

str1 = input()
print(str1*100)
  • NP15 截取用户名前10位

描述

牛客网正在录入用户的昵称,但是有的昵称太长了,对于这些过长的昵称,牛牛觉得截取昵称字符串前10个字符就可以了,你可以帮他写一个程序吗?

输入描述:

输入一个字符串,长度一定不低于10。

输出描述:

输出截取前10个字符后的子串。

image.png

代码如下:

name1 = input()
print(name1[0:10])

image.png

这里的结果还是有点问题的,主要就是为什么是到10而不是到9 ?因为索引是从0开始的,到第10的字符应该索引是9才对的!

获取单个字符

知道字符串名字以后,在方括号[ ]中使用索引即可访问对应的字符,具体的语法格式为: strname[index] strname 表示字符串名字,index 表示索引值。

Python 允许从字符串的两端使用索引:

  • 当以字符串的左端(字符串的开头)为起点时,索引是从 0 开始计数的;字符串的第一个字符的索引为 0,第二个字符的索引为 1,第三个字符串的索引为 2 ……
  • 当以字符串的右端(字符串的末尾)为起点时,索引是从 -1 开始计数的;字符串的倒数第一个字符的索引为 -1,倒数第二个字符的索引为 -2,倒数第三个字符的索引为 -3 ……

image.png

获取多个字符(字符串截去/字符串切片)

使用[ ]除了可以获取单个字符外,还可以指定一个范围来获取多个字符,也就是一个子串或者片段,具体格式为:

strname[start : end : step]

对各个部分的说明:

  • strname:要截取的字符串;
  • start:表示要截取的第一个字符所在的索引(截取时包含该字符)。如果不指定,默认为 0,也就是从字符串的开头截取;
  • end:表示要截取的最后一个字符所在的索引(截取时不包含该字符)。如果不指定,默认为字符串的长度;
  • step:指的是从 start 索引处的字符开始,每 step 个距离获取一个字符,直至 end 索引出的字符。step 默认值为 1,当省略该值时,最后一个冒号也可以省略。

image.png