python之字符串练习题(上)

字符串练习题1

1、给定字符串"Monty Python"
(a)写出表达式显示第一个字符。
(b)写出表达式显示最后一个字符。
©写出包含len函数的表达式,显示最后一个字符
(d)写出一个表达式,显示"Monty"。
【参考答案】

(a)"Monty Python"[0]
(b)"Monty Python"[-1]
(c)"Monty Python"[len("Monty Python")-1]
(d)"Monty Python"[0:5]

2.给定字符串"homebody"
(a)写出分片为"home"的表达式
(b)写出分片为"body"的表达式。

(a)"homebody"[:4]
(b)"homebody[4:]

3.字符串s长度为偶数:
(a)写出显示前半段字符串的表达式
(b)写出显示后半段字符串的表达式

注意:/得到的是带小数点的,但切片需要的是整数索引值。要进行转换
(a)s[:int(len(s)/2)]
(b)s[int(len(s)/2):]

4.字符串s长度为奇数:
(a)写出显示中间字符的表达式。
(b)写一个表达式,显示从开始到中间字符(但不包括)的子串(即,字符串的前半部分)
(c )写一个表达式,显示从中间字符(但不包括)到结尾的子串。

(a)s[int(len(s)/2)]
(b)s[:int(len(s)/2)]
(c )s[int(len(s)/2)-1:]

5.字符串X=“what is your name?”
(a)X[::2]返回什么值?
(b)x[2:8:-1]返回什么值?

(a)"wa syu  ae"
(b)' '

6.给定的字符串x=“acegikmoqsuwy"和y=”+bdfhjlnprtvxz",使用索引来创建一个字符串z(小写英文字母表)。

创建空字符串,x和y交替往里面加字符。
x="acegikmoqsuwy"
y="+bdfhjlnprtvxz"
z=""
for i in range(len(x)):
	z=z+x[i]+y[i+1]

7.加号(+)在Pyon中进行了重载,解释为什么5+4等于9,‘5’+‘4’等于’54’,5+4.0等于9.0。

5+4=9
5和4都是数字类型,+作为加法运算符,进行相加操作,得到9
‘5’+‘4’=‘54’
‘5’和‘4’都是字符串类型,+作为字符串连接符,进行连接,得到‘54’
5+4.0=9.0
整数和浮点数进行相加时会得到浮点数的结果。

8.下面的表达式将输出什么?
x='This is a test.’
print(x*3)

This is a test.This is a test.This is a test.

9.Monty Python喜剧艺术团有一个著名的小品集,是关于一家餐馆的。这家餐馆的菜单主要是Spam,一种火腿和猪肉制成的罐头。其中一个菜单的内容是“Spam,Spam,Spam,Spam,Spam,baked beans,Spam,Spam,Spam,and Spam.”写一个Python 字符串表达式,使用连接(+)和重复(")运算符来生成此菜单项。

a="Spam"
b=","
caidan=(a+b)*5+"baked beans"+(b+a)*3+b+"and "+a+"."

10.你能用一行代码实现以下效果吗?
print(“I like writing in Python.”)
print(“It is so much fun.”)
执行后,运行结果为:
I like writing in Python.
It is so mch fun.

print("I like writing in Python.\nIt is so much fun.")

11.5种字符串操作方法:capitalize、title、swapcase、upper、lower。字符串 sl=“concord”,s2=“souix city”,s3-"HONOLULU"和 s4 =“TopHat”。
(a)说明哪个字符串是capitalize的结果。
(b)说明哪个字符串是swapcase的结果。
©说明哪个字符串是 upper 的结果
(d)说明哪个字符串是 lower的结果
(e)说明哪个字符串是 title 的结果。

(a)capitalize将字符串的第一个字母变成大写,其余字母变为小写。
(b)swapcase是大写转小写,小写转大写。
(c)upper是全部转大写
(d)lower是全部转小写
(e)title是把所有单词的第一个字母变为大写,其他小写

12.能将多个字符串方法在一个表达式中联合使用吗?例如s=“CAT”,s.upper.lower是什么意思?

先把字符串所有字母变成大写,再把得到的结果所有字母变成小写

13.两个字符串方可以在指定宽度中对字符串进行左右对齐处理。默认情况下用空格填充但 也可以指定填充字符。假设s=“Topkapi”、s.rjust(20,“.”)或s.ljust(15),操作的结果是什么?实验左、右对齐方式。描述ljust和rjust的规则。
在这里插入图片描述

ljust是靠左边
rjust是靠右边
第一个参数是字符串的宽度
第二个参数是填充的符号,如果没有就默认是空格

14.两个字符串方法:find和index,用于判定一个字符是否在字符串中。
(a)如果找到一个字符,两种方法是相同的结果。如果没有找到字符,两种方法得到不同结
果。描述没有找到字符时两种方法的区别。(b)find和index方法不仅限于寻找单字符,还可以搜索子串。假定s=“Topkapi”,那么s.find(“kap”)得到什么结果?说明 find 的输出规则。

(a) 如果没有找到字符时,`find` 方法会返回 `-1` 而 `index` 方法会主动抛出错误。
(b) 对于字符串 `s = "Topkapi"`,使用 `s.find("kap")` 将会得到结果 `3`。这是因为子串 `"kap"` 在字符串 `"Topkapi"` 中的开始索引是 `3`(字符串的索引是从 `0` 开始计数的)。

`find` 的输出规则是:
- 如果找到子串,返回其在字符串中的最低索引位置。
- 如果没有找到子串,返回 `-1`。

15.用input命令提示输入,然后将输人转换为小写字符。

a=input().lower()

16.将字符串转换成单词首字母大写的形式。例如,将"NEW YORK"转换为"New York"。

a=input().title()

17.实验count方法。count 对什么计数?例如:
someStr=“Hello world!”
someStr.count("o”)

这里是统计字符串中有多少个“o”
结果为2

18.实验strip方法,它实现什么功能?例如:
somestr=“Hi!..“
somestr.strip(”.!”)

去掉字符串中的“.”和“!”两个符号

19.以“is”开头的字符串方法返回值为“真”或“假"。实验这些方法,看看它们是如何工作的,例如哪些情况会返回真,哪些情况会返回假?

在 Python 中,以“is”开头的方法主要有两个:isalpha()、isdigit()、isalnum()、isupper()、islower()、istitle()等。
isalpha():判断字符串是否只包含字母(a-z, A-Z)
isdigit():判断字符串是否只包含数字。
isalnum():判断字符串是否只包含字母和数字。
isupper():判断字符串是否所有字母都是大写。
islower():判断字符串是否所有字母都是小写。
istitle():判断字符串是否是标题格式(每个单词的首字母大写)。

在这里插入图片描述

20.字符串运算符
(a)假设要显示1行“#”字符。为了简便起见,假设1行只有80个字符。1种方法是创建一个长字符串再显示。在Pyhon中,怎样采用加号(+)来操作字符串?

s=""
for i in range(80):
	s=s+"#"

(b)假设要显示1列“#”字符。为了简单起见,假设一列只有30个字符。类似于(a)的情况。在Python中,怎样采用更优雅的方式用乘号(*)更好地操作字符串?提示:使用换行符(\n)。

print("#\n"*30)
  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值