第8课 字符串2——字符串应用-【精彩三年】2024-2025学年高中信息技术选择性必修1课程探究与巩固Word教参(浙教版2019)

| 20页
| 54人阅读
| 1人下载
教辅
浙江良品图书有限公司
进店逛逛

新版页眉

学科网 zxxk.com学科网 zxxk.com

第8课 字符串2——字符串应用(见学生用书P61)

 

——3.1 字符串,教材P64~73

1.掌握字符串的基本操作,并能编程实现。 2.通过案例分析,能够使用字符串思维解决实际问题。

1.字符串中子串的开始位置、结束位置、长度之间的转换

(1)i为开始位置、j为结束位置,p为长度,则三者之间的转换公式为:

(2)i为开始位置、j为结束位置的下一个位置,p为长度,则三者之间的转换公式为:page number 0

独家授权

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


新版页眉

学科网 zxxk.com学科网 zxxk.com

2.利用字符串实现加密与解密

将明文中的每个位置的字符用其他字符代替,通过换位来实现加密。例如:

 

明文ch

方向

代码

若key=3,则密文为

“A”

右移

chr((ord(ch)-65+key)%26+65)

“D”

“A”

左移

chr((ord(ch)-65-key+26)%26+65)

“X”

“a”

右移

chr((ord(ch)-97+key)%26+65)

“d”

“a”

左移

chr((ord(ch)-97-key+26)%26+65)

“x”

“0”

右移

str((int(ch)+key)%10)

“3”

“0”

左移

str((int(ch)-key+10)%10)

“7”

注意:若右移则为加密,若左移则为解密。

 

  有如下Python程序段,它的功能是求两个字符串s1和s2的最长连续公共子串。若有多个答案,则输出首个答案;若无公共子串,则返回空串。请在横线处填入合适的代码。

s1=input("请输入字符串1: ")

s2=input("请输入字符串2: ")

max_len=0

ans=""

for i in range(len(s1)):page number 1

独家授权

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


新版页眉

学科网 zxxk.com学科网 zxxk.com

for j in range(len(s2)):

if s1[i]==s2[j]:

k=2

if i!=len(s1)-1 and j!=len(s2)-1:

while ① s1[i+k-1]==s1[j+k-1] :

k+=1

if k-1>max_len:

max_len=② k-1 

ans=s1[i:i+max_len]

print(max_len,ans)

【解析】 题目中的程序求两个字符串s1和s2的最长连续公共子串,外层for循环遍历s1字符串位置,内层for循环遍历s2字符串位置,如果i,j位置的字符相等,则从这一对位置开始检测后面字符内容是否相同,通过while循环实现计算后面最长的相同字符内容,因此程序①处填写代码为s1[i+k-1]==s1[j+k-1],多轮循环计算相同字符长度,再比较出最长的公共子串和长度,程序②处代码为k-1。

变式12022·浙江7月学考查找与替换。从键盘上分别输入要查找和替换的字符串,对文本文件进行查找与替换,替换后保存到新的文本文件中。完成查找与替换功能的思路是:首先可从待检索文本文件“in.txt”逐行读取文本内容到列表text,然后从键盘上输入查找的字符串key和替换的字符串new,对列表text中的元素逐个进行查找并替换,结果保存到列表result,最后将result 写入文件“out.txt”。

(1)主程序。page number 2

独家授权

学科网 zxxk.com学科网 zxxk.com学科网(北京)股份有限公司


由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。