中非英文字母个数,循环编程题,删除子串,小玉游泳, 通过年份和月份,求该月天数,随机密码,用人名查电话,高校类型统计)"/>
python作业2(统计字符串中非英文字母个数,循环编程题,删除子串,小玉游泳, 通过年份和月份,求该月天数,随机密码,用人名查电话,高校类型统计)
目录
1. 统计字符串中非英文字母个数
2. 循环编程题
3. 删除子串
4. 小玉游泳
5. 通过年份和月份,求该月天数
6. 随机密码
7. 用人名查电话
8. 高校类型统计
仅供参考,不要使用CV大法,小心查重。有什么问题可以私戳我。
1. 统计字符串中非英文字母个数
【问题描述】统计字符串s中非英文字母的个数并输出。
【输入形式】字符串s
【输出形式】非英文字母的个数
【输入示例】a1b2
【输出示例】2
s = input()
num =0
for i in s :if i.isalpha() and not i.isdigit() :num += 1
print( len( s ) - num )
2. 循环编程题
【问题描述】
已知y=1+1/3+1/5+…+1/2n-1:
求y<3时的最大n值以及最大n值对应的y值(y值保留小数点后2位)。
【样例输入】
无
【样例输出】
n=XXX,y=X.XX
【样例说明】
X代表求出的数。
【评分标准】用循环完成,直接输出不得分。
n = 0
y = 0
while y < 3 :n += 1y += 1 / ( 2 * n - 1)
y -= 1 / ( 2 * n - 1)
n -= 1
print("n={},y={:.2f} ".format(n,y))
3. 删除子串
【问题描述】编写程序实现在字符串s中删除子字符串c的功能。
说明:不考虑去掉子字符串c后形成的新的子字符串c。
例如:字符串s为abcabcd,子串c为bc,则调用该函数后,结果字符串s为aad。
【输入形式】输入的第一行表示字符串s,第二行表示子串c。
【输出形式】输出的一行表示处理后的结果。
【样例输入】
abcabcd
bc
【样例输出】
aad
s = input()
f = input()
print(s.replace(f,''))
4. 小玉游泳
【问题描述】
小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游2米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的98%。现在小玉想知道,如果要游到距离x米的地方,她需要游多少步呢。请你编程解决这个问题。
【输入形式】输入一个数字(不一定是整数,小于100m),表示要游的目标距离。。
【输出形式】输出一个整数,表示小玉一共需要游多少步。。
【样例输入】4.3
【样例输出】3
s = eval(input())
m = 2
i = 1
while m < s :m += (0.98**i)*2i += 1
print(i)
5. 通过年份和月份,求该月天数
问题描述】输入日期的年份和月份,求该月有多少天。提示:对于月份为1、3、5、7、8、10、12的月份天数为31,月份为4、6、9、11的月份天数为30,月份为2时要结合年份考虑闰年的情况。
【输入形式】
输入年份和月份的时候可以结合eval()和input()函数一次性输入2个值,输入数字时用逗号分隔
【输出形式】
对应的天数,2月时要判断是否是闰年
【样例输入】
year,month:2100,2
【样例输出】28
【样例说明】能被4整除但不能被100整除的为闰年,或者能被400整除的为闰年【评分标准】
(y,m) = eval (input ("year,month:"))
a = [1,3,5,7,8,10,12]
b = [4,6,9,11]
if m in a :print( '31' )
elif m in b :print ( '30' )
else :if y % 4 == 0 and y % 100 != 0 or y%400 == 0 :print('29')else :print( '28')
6. 随机密码
【问题描述】
请编写程序,生成随机密码。具体要求如下:
(1)使用 random 库,采用 10作为随机数种子。
提示:random.seed(10)
(2)密码允许字符如下:
s="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*"
(3)密码长度固定为 10 个字符。
【样例输入】
无
【样例输出】e30bA8!Jue
import random
random.seed(10)
s = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*'
length = 10
arr = ''
for i in range(length) :arr += random.choice(s)
print(arr)
7. 用人名查电话
【问题描述】
定义一个电话簿,里头设置以下联系人:
'mayun':'13309283335',
'zhaolong':'18989227822',
'zhangmin':'13382398921',
'Gorge':'19833824743',
'Jordan':'18807317878',
'Curry':'15093488129',
'Wade':'19282937665'
现在输入人名,查询他的号码。
【输入形式】人名,是一个字符串。
【输出形式】电话号码。如果该人不存在,返回"not found"
【样例输入】mayun
【样例输出】13309283335
phone = {'mayun':'13309283335','zhaolong':'18989227822','zhangmin':'13382398921','Gorge':'19833824743','Jordan':'18807317878','Curry':'15093488129','Wade':'19282937665',}
name = input()
if name in phone.keys() :print(phone[name])
else:print("not found")
8. 高校类型统计
【问题描述】列表 ls 中存储了我国 39 所 985 高校所对应的学校类型,请以这个列表为数据变量,编写 代码,统计输出各类型的数量,要求按类别字母顺序输出。
ls = ["Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", "Comprehensive", \
"Comprehensive", "Comprehensive", "Comprehensive", "Comprehensive", "Comprehensive",\
"Normal", "Polytechnic", "Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", \
"Comprehensive", "Comprehensive", "Comprehensive","Polytechnic",\
"Polytechnic", "Polytechnic", "Polytechnic", "Normal", "Comprehensive", \
"Agricultural and Forestry", "Polytechnic", "Comprehensive", "Polytechnic", "Polytechnic", \
"Polytechnic", "Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", \
"Polytechnic", "Agricultural and Forestry", "Nationalities", "Military"]
【样例输入】
无
【样例输出】
Agricultural and Forestry 2
Comprehensive 20
Military 1
Nationalities 1
Normal 2
Polytechnic 13
ls = ["Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", "Comprehensive", \"Comprehensive", "Comprehensive", "Comprehensive", "Comprehensive", "Comprehensive",\"Normal", "Polytechnic", "Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", \"Comprehensive", "Comprehensive", "Comprehensive","Polytechnic",\"Polytechnic", "Polytechnic", "Polytechnic", "Normal", "Comprehensive", \"Agricultural and Forestry", "Polytechnic", "Comprehensive", "Polytechnic", "Polytechnic", \"Polytechnic", "Comprehensive", "Polytechnic", "Comprehensive", "Comprehensive", \"Polytechnic", "Agricultural and Forestry", "Nationalities", "Military"]
arr = {}
for i in ls:arr[i] = arr.get( i , 0 ) + 1
data =list ( arr.items() )
data .sort()
[print(i[0],i[1]) for i in data]
更多推荐
python作业2(统计字符串中非英文字母个数,循环编程题,删除子串,小玉游泳, 通过年份和月份,求该月天数,随机密码,用人名查电话,高校类型统计)
发布评论