如有错误或者更好的解答方式,欢迎批评指正与交流。
1.随机密码生成:生成一个有 10 个元素的由随机数 n 组成的列表,其中 n 的取值范围为 0<=n<=9。
#随机密码生成
import random
passwd = []
for i in range(10):
passwd.append(random.randint(0, 9))
print(passwd)
2.文本字符分析
设执行了如下语句:
s1=”programming”
s2=”language”
s3=”She is the best student in her class”
s4=”he”
(1)取 s1 串下标为 1 的字符串字符。
(2)取 s1 串下标从开始到 3 的子串。
(3)连接 s1 串下标为 0 的字符和 s2 串下标从 1 到 2 的子串。
(4)连接首字符大写后的 s1 串和全部大写的 s2 串。
(5)计算 s1 串中的字符’r’的个数,从字符’r’在 s1 串的左边和右边第一次出现的位置,并累和。
(6)将字符串 s2 作为分隔符加入到序列参数’- -' 的每个字符之间。结果为’-language-‘
(7)将字符串’-'作为分隔符加入到参数 s2 串的每个字符之间。
(8)以参数字符’-'为分隔符,将字符串 s4 分离到一个列表中。S4=’l-a-n-g-u-a-g-e’
(9)取串 s2 开始两个字符连接一个空格后复制 3 次。
(10)将串 s2 反转
(11)判断 s4 是 s3 的子串
(12)判断 s4 在 s3 中出现的次数超过 2 次
(13)利用 s1、s2 和字符串操作,写出能产生下列结果的表达式。
①”program”
②”ProLan”
③”am am am”
④”programming language”
⑤”progr@mming l@ngu@ge”
#文本字符分析
s1 = "programming"
s2 = "language"
s3 = "She is the best student in her class"
s4 = "he"
#取s1串下标为1的字符串字符
print(s1[1])
#取s1串下标从开始到3的子串
print(s1[:4])
#连接s1串下标为0的字符和s2串下标从1到2的子串
print(s1[0] + s2[1:3])
#连接首字符大写后的s1串和全部大写的s2串
print(s1.capitalize() + s2.upper())
#计算s1串中的字符’r’的个数,从字符’r’在s1串的左边和右边第一次出现的位置,并累和
rnum = s1.count('r')
rleft = s1.find('r')
rright = s1.rfind('r')
total = rnum + rleft + rright
print("字符’r’的个数:" + str(rnum))
print("字符’r’在s1串的左边第一次出现的位置:" + str(rleft))
print("字符’r’在s1串的右边第一次出现的位置:" + str(rright))
print("累和:" + str(total))
#将字符串s2作为分隔符加入到序列参数'- -' 的每个字符之间。结果为'-language-'
print(s2.join('--'))
#将字符串'-'作为分隔符加入到参数s2串的每个字符之间
print('-'.join(s2))
#以参数字符'-'为分隔符,将字符串S4分离到一个列表中。S4='l-a-n-g-u-a-g-e'
S4 = 'l-a-n-g-u-a-g-e'
print(S4.split('-'))
#取串s2开始两个字符连接一个空格后复制3次
new_s2 = s2[:2] + ' '
print(new_s2 * 3)
#将串s2反转
print(s2[::-1])
#判断s4是s3的子串
print(s4 in s3)
#判断s4在s3中出现的次数超过2次
print(s3.count(s4) > 2)
#利用s1、s2和字符串操作,写出能产生下列结果的表达式
#s1 = "programming"
#s2 = "language"
#program
print(s1[:7])
#ProLan
print(s1[:3].capitalize() + s2[:3].capitalize())
#am am am
new_s1 = s1[5:7] + " "
print(new_s1 * 3)
#programming language
print(s1 + " " + s2)
#progr@mming l@ngu@ge
sadd = s1 + " " + s2
print(sadd.replace('a', '@'))
3.程序设计:输入连续 5 天的气温,求平均气温。
#输入连续5天的气温,求平均气温
totalair = 0
for i in range(5):
totalair = totalair + float(input())
print("平均气温:" + str(totalair / 5))
4.重复元素判定: 用 set 方法去重后与原列表长度比较
#重复元素判定: 用set方法去重后与原列表长度比较
oldlist = ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
newlist = set(oldlist)
print(len(oldlist) - len(newlist))
5.提示输入一组带重复的实验数据,统计每个数据出现的次数
输入输出示例如下:
请输入一组数据,以逗号分隔:2.5,2.5,3.5,3.5,6.0,8
输入的数据转化为的字符列表['2.5', '2.5', '3.5', '3.5', '6.0', '8']
字符列表转化为数值列表[2.5, 2.5, 3.5, 3.5, 6.0, 8.0]
去重的列表[8.0, 2.5, 3.5, 6.0]
以列表显示每个数字显示的次数[[2.5, 2], [3.5, 2], [6.0, 1], [8.0, 1]]
数字 2.5 出现了 2 次
数字 3.5 出现了 2 次
数字 6.0 出现了 1 次
数字 8.0 出现了 1 次
#提示输入一组带重复的实验数据,统计每个数据出现的次数
from collections import Counter
s = input("请输入一组数据,以逗号分隔:")
#数据转字符列表
slist = s.split(',')
print("输入的数据转化为的字符列表", end='')
print(slist)
#字符列表转数值列表
slist = [float(x) for x in slist]
print("字符列表转化为数值列表", end='')
print(slist)
#使用set进行列表去重
new_slist = list(set(slist))
print("去重的列表", end='')
print(new_slist)
#使用Counter统计列表中数值出现次数,并转化为字典
num_slist = dict(Counter(slist))
#讲字典转为嵌套列表
new_kvlist = []
for k, v in num_slist.items():
kvlist = []
kvlist.append(k)
kvlist.append(v)
new_kvlist.append(kvlist)
print("以列表显示每个数字显示的次数", end='')
print(new_kvlist)
#输出数值出现次数
for k, v in num_slist.items():
print("数字" + str(k) + "出现了" + str(v) + "次")
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于