《Python程序设计》课程
实验报告四 字符串与正则表达式
文章如果太长请直接复制到sublime text 软件里进行关键字搜索
一、实验目的和要求:
- 理解字符串编码格式;
- 熟练掌握字符串的概念和各种用法;
- 掌握Python标准库string的函数和常量;
- 了解正则表达式的概念和元字符的使用。
二、实验内容:(给出具体代码(复制)和程序运行结果(截图))
1 输入一个字符串,将该字符串中下标为偶数的字符组成新串并通过字符串格式化方式显示。
i = str(input())
print('%s'%(i[::2]))
2 编写程序,生成一个15个不重复的大小写字母组成的列表。
import random
s = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] #根据要求定义列表元素范围,无要求时也可定义字符串更方便
#方法1:
List1=[]
for i in range(10): #循环10遍,生成10组密码
for i in range(8):
print (random.choice(s),end="") #random.choice(seq)实现从序列或集合seq中随机选取一个元素
List1.append(random.choice(s))
print(List1)
3给定字符串"site sea suede sweet see kase sse ssee loses",匹配出所有s开头,e结尾的单词。
text ='site sea sue sweet see case sse ssee loses'
re.findall(r'\bs\S*?e\b',text)
结果为:['site', 'sue', 'see', 'sse', 'ssee']
4 生成15个包括10个字符的随机密码,密码中的字符只能是大小写字母、数字和特殊字符“@”、“$”、“#”、“&”、“_”、“~”构成。
import random
s = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",
"0","1","2","3","4","5","6","7","8","9",
“@”,“$”,“#”,“&”,“_”,“~“] #根据要求定义列表元素范围,无要求时也可定义字符串更方便
#方法1:
for i in range(10): #循环10遍,生成10组密码
for i in range(8):
print (random.choice(s),end="") #random.choice(seq)实现从序列或集合seq中随机选取一个元素
print("\n")
三、实验过程中遇到的问题及解决办法。
题目过于简单,问题暂无
熟悉字符串与正则表达式
一.单选题(共10题,50.0分)
1
在Python中,以下标识符合法的是()。
-
A、
_
-
B、
3C
-
C、
it's
-
D、
str
正确答案: A 我的答案:A 得分: 5.0分
2
在Python表达式中可以使用()控制运算符的优先级。
-
A、
()
-
B、
[ ]
-
C、
{ }
-
D、
<>
正确答案: A 我的答案:A 得分: 5.0分
3
在下列Python语句中非法的是()
-
A、
x=y=1
-
B、
x=(y=1)
-
C、
x,y=y,x
-
D、
x=1;y=1
正确答案: B 我的答案:D 得分: 0.0分
4
以下Python注释代码不正确的是()。
-
A、
#Python注释代码
-
B、
#Python注释代码1#Python注释代码2
-
C、
"""Python文档注释"""
-
D、
//Python注释代码
正确答案: D 我的答案:D 得分: 5.0分
5
数学关系式2<x<=10表示成正确的Python表达式为()。
-
A、
2<x<=10
-
B、
2<x and x<=10
-
C、
2<x && x<=10
-
D、
x>2 or x<=10
正确答案: B 我的答案:B 得分: 5.0分
6
在Python中,以下赋值语句正确的是()。
-
A、
x+y=10
-
B、
x=2y
-
C、
x=y=20
-
D、
3y=x+1
正确答案ÿ