python编程题一

题目描述
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。
注:测试用例保证输入参数的正确性,答题者无需验证。测试用例不止一组。
当没有新的输入时,说明输入结束。

输入描述:
注意:输入可能有多组数据。每组数据都包括多行,第一行先输入随机整数的个数N,接下来的N行再输入相应个数的整数。具体格式请看下面的"示例"。

输出描述:
返回多行,处理后的结果

while True:
    try:
        n=int(input()) #读入第一行:随机整数的个数
        res=set()
        for i in range(n):
            res.add(int(input()))# 读入第n行:n个随机整数组成的数组
        for i in sorted(res):
            print(i)
    except:
        break

连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。

while True:
    try:
        s=input()           
        while len(s)>8:               
            print(s[:8])               
            s=s[8:]           
        print(s.ljust(8,"0"))
    except:
        break

写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。

输入描述:
输入一个十六进制的数值字符串。注意:一个用例会同时有多组输入数据

输出描述:
输出该数值的十进制字符串。不同组的测试用例用\n隔开。

while True:
    try:
        print( int(input(), base=16) )
    except:
        break

功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )

num = int(input())
def abc(num):
    a = 1
    for i in range(2,int(num**0.5+2)):
        if num%i == 0:
            a = 0
            print(str(i),end=" ")
            abc(int(num/i))
            break
    if a == 1:
        print(str(num),end=" ")
abc(num)

写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。

print(int(float(input())+0.5))

输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
保证输入的整数最后一位不是0。

a=input()
a=a[::-1]
y=''
for i in a:
    if i not in y:
        y=y+i
print(y)

编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次
例如,对于字符串abaca而言,有a、b、c三种不同的字符,因此输出3。

import sys
a=sys.stdin.readline().strip()
 
words=''
for i in a:
    if i not in words and ord(i)>=0 and ord(i)<=127:
        words+=i
print(len(words))
zifu = input()
a=''
for i in zifu:
    if i in a and 0<ord(i)<127:
        pass
    else:
        a+=i
print(len(a))
line = input().strip()
indexes = set()
for i in line:
    if 0 <= ord(i) <= 127:
        indexes.add(i)
print(len(indexes))

输入一个整数,将这个整数以字符串的形式逆序输出
程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001

s = str(input())
print (''.join(reversed(s)))

a=input()
print(a[::-1])
def func():
    try:
        number_list = input().strip().split(' ')
        number_list.reverse()
        print(' '.join(number_list)
    except:
        pass
 
if __name__ == "__main__":
    func()



strip: 用来去除头尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
lstrip:用来去除开头字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、' ',即:换行、回车、制表符、空格)
` ``

































































  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值