Python题⽬集2(欢迎讨论!有借鉴内容,如侵⽴删)7-1 jmu-python-逆序输出 (5 分)
输⼊⼀⾏字符串,然后对其进⾏如下处理。
输⼊格式:
字符串中的元素以空格或者多个空格分隔。
输出格式:
逆序输出字符串中的所有元素。
然后输出原列表。
然后逆序输出原列表每个元素,中间以1个空格分隔。注意:最后⼀个元素后⾯不能有空格。
输⼊样例:
a b  c e  f  gh
输出样例:
ghfecba
['a','b','c','e','f','gh']
gh f e c b a
错误代码
s=input().split()
print(''.join(s)[::-1])
print(s)
print(' '.join(s)[::-1])
错误输出
>>>%Run 1.py
a b  c e  f  gh
hgfecba
['a','b','c','e','f','gh']
hg f e c b a
我的代码:
s=input().split()
t=s[:]
print(''.join(s))
print(t)
print(' '.join(s))
输出:
>>>%Run 1.py
a b  c e  f  gh
ghfecba
['a','b','c','e','f','gh']
gh f e c b a
7-2 列表去重 (10 分)
输⼊⼀个列表,去掉列表中重复的数字,按原来次序输出!
在⼀⾏中输⼊列表
输出格式:
在⼀⾏中输出不重复列表元素
输⼊样例:
在这⾥给出⼀组输⼊。例如:
[4,7,5,6,8,6,9,5]
输出样例:
在这⾥给出相应的输出。例如:
475689
我的代码:
s=eval(input())#需要,⾃动辨别类型
list2=[str(i)for i in s]#所有元素转化为str, 4-->'4'
a=[]
for i in list2:
if i not in a:
a.append(i)
print(' '.join(a))
7-4 统计并输出字符串中⼩写元⾳字母的个数 (10 分)
输⼊⼀个以换⾏结束的字符串,统计并输出字符串中⼩写元⾳字母的个数(⼩写元⾳字母: ‘a’,‘e’,‘i’,‘o’,‘u’)。
输⼊格式:
在⼀⾏中输⼊字符串
输出格式:
在⼀⾏中输出字符串中⼩写元⾳字母的个数
输⼊样例:
在这⾥给出⼀组输⼊。例如:
HelloI
输出样例:
在这⾥给出相应的输出。例如:
2
我的代码:
s=input()
num=0
for i in s:
if i in['u','o','i','e','a']:
num+=1
print(num)
7-5 计算⽅阵的和,创建新⽅阵 (20 分)
输⼊ 1 个正整数 n(1≤n),再按⾏读⼊ n 阶⽅阵 a 和 b, ⽣成并输出 n 阶⽅阵 c,c 中的元素是 a 和 b 对应元素的和. c[i][j]=a[i][j]+b[i] [j] i,j=0,1,2…n-1(1<=c[i]<=99)
在第⼀⾏输⼊n 在第⼆⾏输⼊a⽅阵 在第⼀⾏输⼊b⽅阵
输出格式:
输出c⽅阵
输⼊样例:
在这⾥给出⼀组输⼊。例如:
3
123456789
234567891
输出样例:
在这⾥给出相应的输出。例如:
357
91113
151710
s=int(input())
a=input().split()#拆分
b=input().split()#拆分
l=len(a)
a=[int(x)for x in a]#变int
b=[int(x)for x in b]#变int
c=[]
k=0
for i in range(l):
c.append(a[i]+b[i])#⼀开始就是个空数组,后⾯⼜对qi进⾏赋值,必会越界。
#最好的解决办法是⽤append或insert插⼊新元素。
for i in range(s):
for j in range(s):
print("{:2d}".format(c[k]),end=" ")
k+=1
print("")
7-7 分析活动投票情况 (10 分)
利⽤集合分析活动投票情况。第⼀⼩队有五名队员,序号是1,2,3,4,5;第⼆⼩队也有五名队员,序号6,7,8,9,10。输⼊⼀个得票字符串,求第⼆⼩队没有得票的队员
输⼊格式:
在⼀⾏中输⼊得票的队员的序列号,⽤逗号隔开。
输出格式:
⼀⾏中输出第⼆⼩队没有得票的队员序号。
输⼊样例:
在这⾥给出⼀组输⼊。例如:
1,5,9,3,9,1,1,7,5,7,7,3,3,1,5,7,4,4,5,4,9,5,10,9
输出样例:
在这⾥给出相应的输出。例如:
68
我的代码:
不太好。我猜测最好还是⽤str做
a=a.strip()#去9后⾯的空格
a=a.split(',')
a=list(set(a))
a=[int(x)for x in a]
b=[1,2,3,4,5,6,7,8,9,10]
for x in a:
for x in b:
if x<=5:
b=[str(x)for x in b]#为了输出过于复杂
b=' '.join(b)
print(b)
7-8 jmu-python-重复元素判定 (30 分)
每⼀个列表中只要有⼀个元素出现两次,那么该列表即被判定为包含重复元素。
编写函数判定列表中是否包含重复元素,如果包含返回True,否则返回False。
然后使⽤该函数对n⾏字符串进⾏处理。最后统计包含重复元素的⾏数与不包含重复元素的⾏数。
输⼊格式:
输⼊n,代表接下来要输⼊n⾏字符串。
然后输⼊n⾏字符串,字符串之间的元素以空格相分隔。
输出格式:
True=包含重复元素的⾏数, False=不包含重复元素的⾏数
后⾯有空格。
输⼊样例:
5
12345
13254
12361
12321
11111
输出样例:
True=3,False=2
我的代码:
#这思想太绝了
a=int(input())
true=false=0
for i in range(a):
b=input().split()
if len(list(b))==len(set(b)):#set本⾝是⽆序不重复的元素集
false+=1
else:
true+=1
print('True=%d, False=%d'%(true,false))
7-11 两数之和 (20 分)
给定⼀组整数,还有⼀个⽬标数,在给定这组整数中到两个数字,使其和为⽬标数,如到,解是唯⼀的。不到则显⽰ “no answer”。输出的下标按从⼩到⼤排序。⽤⼀重循环加字典实现。
在⼀⾏中给出这组数。 在下⼀⾏输⼊⽬标数
输出格式:
在⼀⾏中输出这两个数的下标,⽤⼀个空格分开。
输⼊样例1:
在这⾥给出⼀组输⼊。例如:
2,7,11,15
9
输出样例1:
在这⾥给出相应的输出。例如:
01
输⼊样例2:
在这⾥给出⼀组输⼊。例如:
3,6,9
10
输出样例2:
在这⾥给出相应的输出。例如:
python格式化输出formatno answer
我的代码:
a1=input()#(1,0)和(0,1)的处理上不太简便
b=int(input())
a=a1.split(',')
ai=[int(x)for x in a]
aa=list(enumerate(ai))
count=0
for i in range(len(ai)):
for j in range(len(ai)):
if ai[i]+ai[j]==b:
if j<i:
print("{:} {:}".format(j,i))
count=1
if count==0:
print("no answer")
7-13 求出歌⼿的得分 (20 分)
输⼊⼀个正整数n (n>4),再输⼊n个实数,求出歌⼿的得分(保留2位⼩数)。设⼀歌唱评奖晚会上有n(n>4)个评委为歌⼿打分.评分规则:每个评委依次打分,再去掉2个最⾼分和2个最低分,计算余下的分数平均值为歌⼿的得分.
输⼊格式:
在第⼀⾏中输⼊n 在第⼆⾏中输⼊n个分数
输出格式:
在⼀⾏中输出平均分数
输⼊样例:
在这⾥给出⼀组输⼊。例如:
10
101099988877

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。