内容正文:
《Python语言程序设计基础》(电子科技大学出版社)
第3章 Python字符串输入输出
考试时间:90分钟 满分:100分
姓名 班级 学号
1、 单项选择题(本题共20小题,每题3分,共60分)
1.用于注释函数功能的多行字符串,通常使用哪种引号定义( )
A. 单引号
B. 双引号
C. 三引号
D. 混合使用单双引号
2.%操作符格式化中,“%.3f”的含义是( )
A. 格式化整数,保留3位宽度
B. 格式化浮点数,保留3位小数
C. 格式化字符串,保留3个字符
D. 格式化十六进制数,保留3位
3.str.format()中,使用关键字参数匹配的正确写法是( )
A. print("{name} is {age}".format("Lucy", 20))
B. print("{name} is {age}".format(name="Lucy", age=20))
C. print("%(name) s is %(age) d" %("Lucy", 20))
D. print("{0} is {1}".format(name="Lucy", age=20))
4.代码e = 'ac'; f = 'ab'; print(e < f)的运行结果是( )
A. True
B. False
C. 报错
D. None
5.运算符“is not”的作用是( )
A. 判断字符串值不同
B. 判断两个标识符引用不同对象(内存地址不同)
C. 判断字符串长度不同
D. 判断字符编码不同
6、若两个字符串前面所有字符均相同,仅长度不同,比较结果是( )
A. 长度短的字符串更大
B. 长度长的字符串更大
C. 结果为True
D. 无法比较
7、input()函数中,参数promptMessage的作用是( )
A. 转换输入数据类型
B. 限制输入长度
C. 提示用户输入的信息
D. 定义输入数据格式
8、以下代码中,能正确输出"He said:"Hello""的是( )
A. print("He said:"Hello"")
B. print('He said:"Hello"')
C. print("He said:Hello")
D. print("He said:\Hello")
9、eval()函数的作用是( )
A. 仅转换为整数
B. 获取输入表达式的值
C. 仅转换为字符串
D. 输出提示信息
10、以下关于input()函数的用法,正确的是( )
A. name = input("请输入姓名:")
B. name = input(请输入姓名:)
C. name = input("请输入姓名:", "字符串")
D. name = input(int("请输入姓名:"))
11、要判断字符是否在字符串中,应使用的运算符是( )
A. in
B. not in
C. ==
D. is
12、以下运算会报错的是( )
A. "Hello"+"Python"
B. "Hello"*3
C. "Hello"+3
D. "He"[0:2]
13、已知a="Python",执行a[2:5]的运行结果是( )
A. tho
B. yth
C. hon
D. Pyt
14、执行print(r'
')的运行结果是( )
A. 换行
B.
C. N
D. 报错
15、以下关于字符串运算的描述正确的是( )
A. *的操作对象是两个字符串
B. +运算不产生新字符串
C. 切片遵循左闭右开原则
D. in运算符不区分大小写
16、以下方法中,与find()功能类似但不存在时会报异常的是( )
A. rfind()
B. index()
C. startswith()
D. endswith()
17、要检查字符串是否以指定子串开头,应使用的方法是( )
A. startswith()
B. endswith()
C. contains()
D. find()
18、以下方法中,能返回字符串中最大字母的是( )
A. max()
B. min()
C. upper()
D. title()
19、代码str1="hello, Python! hello,c!"; print(str1[-8:-1])的运行结果是( )
A. hello,c
B. hello,c!
C. Python
D. Python!
20、字符串切片s[:-2]的含义是( )
A. 从开头到索引2
B. 从索引-2到末尾
C. 从开头到索引-3(排除最后2个字符)
D. 从索引2到末尾
2、 判断题(本题共10小题,每题2分,共20分)
1、原始字符串前缀r/R可以忽略转义字符的特殊功能。( )
2、已知a="Test",执行a[3:]的运行结果是"t"。( )
3、字符串运算+和*会修改原字符串的值。( )
4、string.replace(str1, str2)会修改原字符串的值。( )
5、string.count(str)若str不在string中,返回值为-1。( )
6、split()方法无参数时,会将字符串按任意空白字符拆分。( )
7、join()方法的参数列表中,元素可以是整数类型。( )
8、字符串切片str[-3:-1]包含索引-1对应的字符。( )
9、代码s="hello,Python";print(s.split(","))的运行结果是['hello','Python']。( )
10、代码print('java' in 'hello, Python!')的运行结果是 True。( )
3、 填空题(本题共10小题,每题2分,共20分)
1、三引号除了定义字符串,还常被用作多行_______,用于注释函数的功能。
2、print()函数省略所有参数时,会输出一个______。
3、字符串切片运算遵循_______原则。
4、检查字符串是否以指定子串开头的方法是_______。
5、查找子串并返回索引,不存在时报异常的方法是_______。
6、将字符串所有大写转为小写的方法是________。
7、判断字符串是否为数字的方法是______。
8、Python 中用于获取用户输入的函数是________。
9、split(".",3)表示分隔_______次。
10、_______方法的作用是将列表中的元素,以指定字符串为分隔符合并为新字符串。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
《Python语言程序设计基础》(电子科技大学出版社)
第3章 Python字符串输入输出
考试时间:90分钟 满分:100分
姓名 班级 学号
1、 单项选择题(本题共20小题,每题3分,共60分)
1.用于注释函数功能的多行字符串,通常使用哪种引号定义( )
A. 单引号
B. 双引号
C. 三引号
D. 混合使用单双引号
【答案】C
【解析】三引号包围的多行字符串常常出现在函数声明的下一行,用来注释函数的功能,因此选C。
2.%操作符格式化中,“%.3f”的含义是( )
A. 格式化整数,保留3位宽度
B. 格式化浮点数,保留3位小数
C. 格式化字符串,保留3个字符
D. 格式化十六进制数,保留3位
【答案】B
【解析】m.n中n是小数点后的位数,%f是浮点数格式符,因此“%.3f”表示浮点数保留3位小数,因此选B。
3.str.format()中,使用关键字参数匹配的正确写法是( )
A. print("{name} is {age}".format("Lucy", 20))
B. print("{name} is {age}".format(name="Lucy", age=20))
C. print("%(name) s is %(age) d" %("Lucy", 20))
D. print("{0} is {1}".format(name="Lucy", age=20))
【答案】B
【解析】关键字参数需用“键 = 值”形式传入format(),A是位置参数,C是%操作符的字典参数用法,D序号与关键字冲突,因此选B。
4.代码e = 'ac'; f = 'ab'; print(e < f)的运行结果是( )
A. True
B. False
C. 报错
D. None
【答案】B
【解析】多字符比较从索引0开始,'a' == 'a',继续比较索引1:'c' > 'b',因此e < f结果为False,因此选B。
5.运算符“is not”的作用是( )
A. 判断字符串值不同
B. 判断两个标识符引用不同对象(内存地址不同)
C. 判断字符串长度不同
D. 判断字符编码不同
【答案】B
【解析】“is not”是“is”的否定,判断内存地址不同,因此选B。
6、若两个字符串前面所有字符均相同,仅长度不同,比较结果是( )
A. 长度短的字符串更大
B. 长度长的字符串更大
C. 结果为True
D. 无法比较
【答案】B
【解析】如果两个字符串到一个字符串结束时都相等,那么较长的字符串更大,因此选B。
7、input()函数中,参数promptMessage的作用是( )
A. 转换输入数据类型
B. 限制输入长度
C. 提示用户输入的信息
D. 定义输入数据格式
【答案】C
【解析】input()函数中,promptMessage是提示信息,用于告知用户需输入的内容,因此选C。
8、以下代码中,能正确输出"He said:"Hello""的是( )
A. print("He said:"Hello"")
B. print('He said:"Hello"')
C. print("He said:Hello")
D. print("He said:\Hello")
【答案】B
【解析】print()输出字符串时可以包含另外一种引号,但不可以包含同一种,否则需要转义,B外层用单引号,内层用双引号,无需转义,因此选B。
9、eval()函数的作用是( )
A. 仅转换为整数
B. 获取输入表达式的值
C. 仅转换为字符串
D. 输出提示信息
【答案】B
【解析】使用eval()函数得到表达式的值,可处理输入的数值或简单表达式,因此选B。
10、以下关于input()函数的用法,正确的是( )
A. name = input("请输入姓名:")
B. name = input(请输入姓名:)
C. name = input("请输入姓名:", "字符串")
D. name = input(int("请输入姓名:"))
【答案】A
【解析】input()参数为提示字符串(需引号包裹),且仅一个参数,B缺少引号,C多参数,D参数格式错误,因此选A。
11、要判断字符是否在字符串中,应使用的运算符是( )
A. in
B. not in
C. ==
D. is
【答案】A
【解析】in是成员运算符,用于判断字符是否在字符串中,如果字符串中包含给定的字符返回True,因此选A。
12、以下运算会报错的是( )
A. "Hello"+"Python"
B. "Hello"*3
C. "Hello"+3
D. "He"[0:2]
【答案】C
【解析】+运算符需要两个字符串对象,3是整数,不符合操作对象要求,会报错;A、B、D均为合法运算,因此选C。
13、已知a="Python",执行a[2:5]的运行结果是( )
A. tho
B. yth
C. hon
D. Pyt
【答案】A
【解析】切片左闭右开,a[2]是t、a[3]是h、a[4]是o,因此结果为tho,因此选A。
14、执行print(r'
')的运行结果是( )
A. 换行
B.
C. N
D. 报错
【答案】B
【解析】r'
'会直接输出字符本身,因此结果为
,因此选B。
15、以下关于字符串运算的描述正确的是( )
A. *的操作对象是两个字符串
B. +运算不产生新字符串
C. 切片遵循左闭右开原则
D. in运算符不区分大小写
【答案】C
【解析】A中*的操作对象是字符串和整数;B中+会产生新字符串,不影响原字符串;D中in区分大小写;C符合切片规则,因此选C。
16、以下方法中,与find()功能类似但不存在时会报异常的是( )
A. rfind()
B. index()
C. startswith()
D. endswith()
【答案】B
【解析】string.index()跟find()方法一样,只不过index()如果str不在string中会报一个异常,因此选B。
17、要检查字符串是否以指定子串开头,应使用的方法是( )
A. startswith()
B. endswith()
C. contains()
D. find()
【答案】A
【解析】string.startswith(obj)检查字符串是否是以obj开头,因此选A。
18、以下方法中,能返回字符串中最大字母的是( )
A. max()
B. min()
C. upper()
D. title()
【答案】A
【解析】max()返回字符串中最大的字母,因此选A。
19、代码str1="hello, Python! hello,c!"; print(str1[-8:-1])的运行结果是( )
A. hello,c
B. hello,c!
C. Python
D. Python!
【答案】A
【解析】负索引从右开始,-8到- 1(左闭右开)包含索引- 8至- 2的字符,对应“hello,c”,因此选A。
20、字符串切片s[:-2]的含义是( )
A. 从开头到索引2
B. 从索引-2到末尾
C. 从开头到索引-3(排除最后2个字符)
D. 从索引2到末尾
【答案】C
【解析】s[:-2]表示从开头到索引-2(左闭右开),即排除最后2个字符,因此选C。
2、 判断题(本题共10小题,每题2分,共20分)
1、原始字符串前缀r/R可以忽略转义字符的特殊功能。( )
【答案】正确。print(r'
')输出"
",而非换行,说明原始字符串忽略转义功能,故正确。
2、已知a="Test",执行a[3:]的运行结果是"t"。( )
【答案】正确。切片a[3:]表示从索引3到字符串末尾,a[3]是"t",结果正确,故正确。
3、字符串运算+和*会修改原字符串的值。( )
【答案】错误。+和*运算符都产生了新的字符串对象,但都不会影响表达式中的原字符串,故错误。
4、string.replace(str1, str2)会修改原字符串的值。( )
【答案】错误。字符串是不可变对象,replace()会返回新字符串,不修改原字符串,故错误。
5、string.count(str)若str不在string中,返回值为-1。( )
【答案】错误。count()不存在时返回0,find()返回-1,故错误。
6、split()方法无参数时,会将字符串按任意空白字符拆分。( )
【答案】正确。split()方法无参数时默认分隔符为空格,支持所有空白字符拆分,故正确。
7、join()方法的参数列表中,元素可以是整数类型。( )
【答案】错误。join()方法的参数列表中,元素是整数需先转为字符串才能合并,否则报错,故错误。
8、字符串切片str[-3:-1]包含索引-1对应的字符。( )
【答案】错误。切片遵循左闭右开原则,str[-3:-1]不包含索引-1,故错误。
9、代码s="hello,Python";print(s.split(","))的运行结果是['hello','Python']。( )
【答案】正确。split(",")表示以逗号为分隔符,拆分后得到两个元素,结果正确,故正确。
10、代码print('java' in 'hello, Python!')的运行结果是 True。( )
【答案】错误。字符串中不含“java”,运行结果为False,故错误。
3、 填空题(本题共10小题,每题2分,共20分)
1、三引号除了定义字符串,还常被用作多行_______,用于注释函数的功能。
【答案】注释
2、print()函数省略所有参数时,会输出一个______。
【答案】空行
3、字符串切片运算遵循_______原则。
【答案】左闭右开
4、检查字符串是否以指定子串开头的方法是_______。
【答案】startswith()
5、查找子串并返回索引,不存在时报异常的方法是_______。
【答案】index()
6、将字符串所有大写转为小写的方法是________。
【答案】lower()
7、判断字符串是否为数字的方法是______。
【答案】isdigit()
8、Python 中用于获取用户输入的函数是________。
【答案】input()
9、split(".",3)表示分隔_______次。
【答案】3
10、_______方法的作用是将列表中的元素,以指定字符串为分隔符合并为新字符串。
【答案】join()
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$