内容正文:
浙江良品图书有限公司
精彩三年学考尖峰 信息技术 2022浙江
专题梳理8 字符处理1:选择
单击此处编辑母版文本样式
1
【必修1 第38—94页 指导意见第13—19页】
1.字符串概念
字符串(String)是由数字、字母、标点符号等组成的一串字符是Python中最常见的数据类型。
2.字符串索引、截取
字符串可以通过下标及方括号[]进行对应元素的索引;通过s[start:stop:step]切片函数,截取对应子字符串。
正向索引: 0 1 2 3 4 5
负数索引:-6 -5 -4 -3 -2 -1
单击此处编辑母版文本样式
切片函数:(例:s='python')
单击此处编辑母版文本样式
3.字符串拼接
字符串通过加法运算符‘+’,实现字符拼接。例:'12'+'34'='1234'
4.字符串相关运算符(例:a='Hello' b='python')
单击此处编辑母版文本样式
单击此处编辑母版文本样式
5.字符串相关函数
单击此处编辑母版文本样式
6.字符串元素遍历算法实现
例如,有下列Python程序段,实现对字符串中的数字子串进行输出,并统计数据和。左例中实现对字符串内元素循环,右例中实现对字符串中下标循环。
单击此处编辑母版文本样式
典例1 有如下Python程序,运行结束后,输出的结果为( )
s='WE12-30ab!cd@';y=”
for i in range(len(s)-1,-1,-1):
ch=s[i]
if '0'<=ch<='9':
y=ch+y
elif 'a'<=ch<='z':
y=y+ch
print(y)
C
单击此处编辑母版文本样式
A.dcba0321 B.dcba0321EW
C.1230dcba D.0321abcd
解析 程序实现对字符串逆序读取,并将数字字符逆序拼接到变量y中,即“1230”;将小写字母顺序拼接到变量y中,即“dcba”程序执行后y为“1230dcba”。
单击此处编辑母版文本样式
典例2 有如下Python程序,运行结束后,输出的结果为( )
s='Happy-Day-2021!'
m=n=k=0
for i in s :
if '0'<=i<='9':
m+=1
elif 'a'<=i<='z':
n+=1
else:
D
单击此处编辑母版文本样式
k+=1
print(k)
A.2 B.3 C.4 D.5
解析 程序实现对字符串依次遍历,并将数字字符个数累计到变量m;小写字母字符个数累计到变量n;其他字符个数累计到变量k,即其他字符有5个。
单击此处编辑母版文本样式
典例3 对用户输入的字符串进行解密的Python字符串如下:
mw=”
s=input()
for i in range(len(s)):
ch=s[i]
m=ord(ch)-i
if m<0:
m=m+127
mw+=chr(m)
单击此处编辑母版文本样式
print(mw)
已知大写字母A的内码为65,小写字母a的内码为97,在键盘中输入内容“yhT5”,执行程序段后,输出的结果为( )
A.YHt5 B.xgS4
C.ygR2 D.xfQ1
解析 该加密算法为对字符内码进行转变后,再将其转换为字符,如“y”的内码121,减去其对应下标0,得到加密后的字符为“y”。相应地,加密以后得到的密文为“ygR2”。
C
单击此处编辑母版文本样式
典例4 有如下Python程序,键盘输入“1931-572-16”(不包括引号),运行结束后,输出的结果为( )
temp=0;mw=”
s=input()
for i in s:
if '0'<=i<='9':
temp=temp*10+int(i)
elif i=='-':
mw=mw+chr(temp%27-1+ord('A'))
B
单击此处编辑母版文本样式
temp=0
else:
mw+=i
print(mw)
A.HAD B.NE
C.NEP D.ORG-
解析 本算法在遇到“-”时,对原先采集到的数据进行加密转换,故分析本题,输入“1931-572-16”后,只能是实现对前两个数据的转换,即得到两个字符,选项B正确。
单击此处编辑母版文本样式
典例5 有如下Python程序,键盘输入“123sAw34”(不包括引
号),运行结束后,输出的结果为( )
s=input()
t=0;sum=