资讯详情

python暑期训练100题

问题1(√)

编写一个程序,找到所有这样的数字,它们可以被7删除,但不能是5倍(在2000和3200之间)(包括在内)。获得的数字应以逗号分离的顺序打印在一行上。

list=[] for i in range(2000,3201):     if i%7==0 and i%5 !=0:         list.append(i)     else:         continue print(list) 

输出:

[2002, 2009, 2016, 2023, 2037, 2044, 2051, 2058, 2072, 2079, 2086, 2093, 2107, 2114, 2121, 2128, 2142, 2149, 2156, 2163, 2177, 2184, 2191, 2198, 2212, 2219, 2226, 2233, 2247, 2254, 2261, 2268, 2282, 2289, 2296, 2303, 2317, 2324, 2331, 2338, 2352, 2359, 2366, 2373, 2387, 2394, 2401, 2408, 2422, 2429, 2436, 2443, 2457, 2464, 2471, 2478, 2492, 2499, 2506, 2513, 2527, 2534, 2541, 2548, 2562, 2569, 2576, 2583, 2597, 2604, 2611, 2618, 2632, 2639, 2646, 2653, 2667, 2674, 2681, 2688, 2702, 2709, 2716, 2723, 2737, 2744, 2751, 2758, 2772, 2779, 2786, 2793, 2807, 2814, 2821, 2828, 2842, 2849, 2856, 2863, 2877, 2884, 2891, 2898, 2912, 2919, 2926, 2933, 2947, 2954, 2961, 2968, 2982, 2989, 2996, 3003, 3017, 3024, 3031, 3038, 3052, 3059, 3066, 3073, 3087, 3094, 3101, 3108, 3122, 3129, 3136, 3143, 3157, 3164, 3171, 3178, 3192, 3199]

问题2(√)

编写一个程序,可以计算出给定数字的阶乘,结果应以逗号分隔的顺序打印在一行上,假设向程序提供了以下输入:8 然后,输出应为:40320

a=eval(input())
m=1
for i in range(a):

    m=m*(i+1)

print(m)

问题3(√)

使用给定的整数n,编写程序以生成包含(i,ixi)的字典,该字典为1到n之间的整数(都包括在内)。然后程序应打印字典。假设向程序提供了以下输入: 8 然后,输出应为 {1:1,2:4,3:9,4:16,5:25,6:36,7:49,8:64}

a=eval(input())
dic= { 
        }
for i in range(1,a+1):

    dic[i]=i**2

print(dic)

输出:

{ 
        1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}

问题4(√)

编写一个程序,该程序从控制台接受一个逗号分隔的数字序列,并生成一个列表和一个包含每个数 字的元组。假设向该程序提供了以下输入:

34,67,55,33,12,98

然后,输出应为:

[‘34’, ‘67’, ‘55’, ‘33’, ‘12’, ‘98’] (‘34’, ‘67’, ‘55’, ‘33’, ‘12’, ‘98’)

s=input()
l=s.split(",")
t=tuple(l)
#print(f" {l}")
#print(f" {t}")
print(l)
print(t)

输出:

['34', '67', '55', '33', '12', '98']
('34', '67', '55', '33', '12', '98')

问题5

定义一个至少具有两个方法的类: getString:从控制台输入获取字符串 printString:以大写字母打印字符串 还请包括简单的测试功能来测试类方法

问题6(√)

编写一个程序,根据给定的公式计算并打印该值: Q = [(2 * C *D)/ H]的平方根 以下是C和H的固定值: C为50。H为30。 D是变量,其值应以逗号分隔的顺序输入到您的程序中,例如,让我们假设以下逗号分隔的输入顺 序被赋予了程序:

import math
c=50
h=30
list=[]
list=eval(input())
def gs(d):

   q=math.sqrt((2*c*d)/h) return q m=[] for i in range(len(list)):
    j=int((gs(list[i]))//1)
    m.append(j)
m=','.join(str(i) for i in m)
print(m)

输出:

18,22,24

问题7

_编写一个程序,该程序将X,Y两位数字作为输入并生成一个二维数组。数组的第i行和第j列中的 元素值应为i * j。 注意:i = 0,1 …,X-1; j = 0,1,i(Y-1)。假设将以下输入提供给程序:3,5 然后,程序的输出应为:

[[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8]]

问题8

编写一个程序,该程序接受以逗号分隔的单词序列作为输入,并在按字母顺序对单词进行排序后以 逗号分隔的顺序打印这些单词。 假设将以下输入提供给程序:

without,hello,bag,world

然后,输出应为:

bag,hello,without,world

问题9(√)

编写一个接受行序列作为输入的程序,并在使句子中的所有字符都大写之后打印行。 假设将以下输入提供给程序:

Hello world Practice makes perfect

然后,输出应为:

HELLO WORLD PRACTICE MAKES PERFECT

i=input()
s=i.upper()
print(s)

问题10

编写一个程序,该程序接受一系列由空格分隔的单词作为输入,并在删除所有重复的单词并将其按首字 母数字顺序排序后打印这些单词。 假设将以下输入提供给程序:

hello world and practice makes perfect and hello world again

然后,输出应为:

again and hello makes perfect practice world

提示:我们使用set容器自动删除重复的数 据,然后使用sorted()对数据进行排序。

问题11

编写一个程序,该程序接受以逗号分隔的4位二进制数字序列作为输入,然后检查它们是否可被5 整除。被5整除的数字将以逗号分隔的顺序打印。 例子:

0100,0011,1010,1001

然后输出应为:

1010

问题12(√)

编写一个程序,查找所有介于1000和3000之间的数字(都包括在内),以使数字的每个数字均为 偶数。获得的数字应以逗号分隔的顺序打印在一行上。

list=[]
for i in range(1000,3001):
    if i%2==0:
        list.append(i)
    else:
        continue

list=','.join(str(i) for i in list)
print(list)

问题13(√)

编写一个接受句子并计算字母和数字数量的程序。 假设将以下输入提供给程序:

hello world! 123

然后,输出应为:

LETTERS 10 DIGITS 3

a=input()

b=0
xx=0
dx=0
c=0
for i in a:
    if i.islower():
        xx+=1
    elif i.isupper():
        dx+=1
    elif i.isdigit():
        c+=1

b=xx+dx
print("LETTERS %d"%b)
print("DIGIT %d"%c)

LETTERS 10
DIGIT 3

问题14(√)

编写一个接受句子的程序,并计算大写字母和小写字母的数量。 假设将以下输入提供给程序:

Hello world!

然后,输出应为:

UPPER CASE 1 LOWER CASE 9

a=input()

b=0
xx=0
dx=0
c=0
for i in a:
    if i.islower():
        xx+=1
    elif i.isupper():
        dx+=1
    elif i.isdigit():
        c+=1

b=xx+dx
print("UPPER CASE %d"%dx)
print("LOWER CASE %d"%xx)

问题15(√)

编写一个程序,以给定的数字作为a的值来计算a + aa + aaa + aaaa的值。 假设将以下输入提供给程序:

9

然后,输出应为:

11106

a=eval(input())
b=a+a*11+a*111+a*1111
print(b)

问题16(√)

使用列表推导对列表中的每个奇数取平方。该列表由逗号分隔的数字序列输入。>假设将以下输入 提供给程序:

1,2,3,4,5,6,7,8,9

然后,输出应为:

1,9,25,49,81

list=[]
answer=[]

list=eval(input())
for i in list:
    if i%2==1:
        m=i**2
        answer.append(m)
    else:
        continue
answer=','.join(str(i) for i in answer)

print(answer)

1,9,25,49,81

问题17

编写一个程序,该程序根据来自控制台输入的交易日志来计算银行帐户的净额。事务日志格式如下 所 示:

D 100 W 200

D表示存款,W表示提款。

假设将以下输入提供给程序:

D 300 D 300 W 200 D 100

然后,输出应为:

500

问题18

网站要求用户输入用户名和密码进行注册。编写程序以检查用户输入的密码是否有效。 以下是检查密码的标准: [az]之间至少1个字母 [0-9]之间至少1个数字 [AZ]之间至少1个字母 [$#@]中的至少1个字符 交易密码的最小长度:6 交易密码的最大长度:12 您的程序应接受逗号分隔的密码序列,并将根据上述条件进行检查。符合条件的密码将被打印,每 个密码之间用逗号分隔。 例子 如果输入以下密码作为程序输入:

ABd1234@1,a F1#,2w3E*,2We3345

然后,程序的输出应为:

ABd1234@1

问题19

您需要编写一个程序来按升序对(名称,年龄,分数)元组进行排序,其中名称是字符串,年龄和 分 数是数字。元组由控制台输入。排序标准是: 1:根据名称排序 2:然后根据年龄排序 3:然后按分数排序 优先级是名称>年龄>得分。 如果给出以下元组作为程序的输入:

Tom,19,80 John,20,90 Jony,17,91 Jony,17,93 Json,21,85

然后,程序的输出应为:

[(‘John’, ‘20’, ‘90’), (‘Jony’, ‘17’, ‘91’), (‘Jony’, ‘17’, ‘93’), (‘Json’, ‘21’, ‘85’), (‘Tom’, ‘19’, ‘80’)]

问题20

用生成器定义一个类,该生成器可以迭代在给定范围0和n之间可以被7整除的数字。 假设将以下输入提供给程序:

7

然后,输出应为:

0 7 14

问题21

机器人从原始点(0,0)开始在平面上移动。机器人可以按照给定的步骤向上,下,左和右移动。 机器人运动的轨迹如下图所示:

UP 5 DOWN 3 LEFT 3 RIGHT 2

方向后的数字为步长。请编写一个程序,以计算一系列移动和原始点之后与当前位置的距离。如果 距离是浮点数,则只需打印最接近的整数即可。 示例: 如果给出以下元组作为程序的输入:

UP 5 DOWN 3 LEFT 3 RIGHT 2

然后,程序的输出应为:

2

如果将输入数据提供给问题,则应假定它是控制台输入。这里的距离表示欧几里得距离。导入数学 模块以使用sqrt函数。

问题22

编写一个程序来计算输入中单词的频率。在按字母数字顺序对键进行排序后,应输出输出。 假设将以下输入提供给程序:

New to Python or choosing between Python 2 and Python 3? Read Python 2 or Python 3.

然后,输出应为:

2:2 3.:1 3?:1 New:1 Python:5 Read:1 and:1 between:1 choosing:1 or:2 to:1

问题23(√)

编写一种可以计算数字平方值的方法

a=eval(input())
b=a**2
print(b)

问题24

Python具有许多内置函数,如果您不知道如何使用它,则可以在线阅读文档或查找一些书籍。但 是 Python对于每个内置函数都有一个内置文档函数。 请编写程序以打印一些Python内置函数文档,例如abs(),int(),raw_input() 并添加您自己的功能的文档

问题25

定义一个类,该类具有一个类参数并且具有相同的实例参数。 提示:

Define an instance parameter, need add it in init method.You can init an object with construct parameter or set the value later

问题26(√)

定义一个可以计算两个数字之和的函数。 提示:

定义一个以两个数字作为参数的函数。您可以在函数中计算总和并返回值。

def count(a,b):
    c=a+b
    return c

问题27

定义一个可以将整数转换为字符串并在控制台中打印的函数. 提示: 使用str()将数字转换为字符串。

问题28

问题: 定义一个函数,该函数可以接收两个字符串形式的整数并计算它们的总和,然后在控制台中打印 它。 提示: 使用int()将字符串转换为整数。

问题29

定义一个函数,该函数可以接受两个字符串作为输入并将其连接起来,然后在控制台中将其打印出 来。 提示: 使用+号连接字符串。

问题30(√)

定义一个函数,该函数可以接受两个字符串作为输入,并在控制台中打印最大长度的字符串。如果 两 个字符串的长度相同,则该函数应逐行打印所有字符串。 提示: ***使用len()函数获取字符串的长度。

a=""
b=""
a=input()
b=input()
a1=len(a)
b1=len(b)
if a1>b1:
    print(a)
elif a1<b1:
    print(b)
else:
    print(a,b)

问题31(√)

定义一个可以打印字典的函数,其中键是1到20之间的数字(都包括在内),值是键的平方。

def dict():
    dic = { 
        i:i**2 for i in range(1,21)}
    print(dic)

dict()

问题32(√)

定义一个可以生成字典的函数,其中键是1到20之间的数字(都包括在内),值是键的平方。该功 能 应仅打印键。

def dict():
    dic = { 
        i:i**2 for i in range(1,21)}
    for j in range(1,21):
      print(j)

dict()

问题33(√)

定义一个函数,该函数可以生成和打印一个列表,其中值是介于1到20之间的数字的平方(均包括 在 内)。

def list():
    list=[]

    for j in range(1,21):
      list.append(j**2)
    print(list)

list()

问题34(√)

定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在 内)。然后,该功能需要打印列表中的前5个元素。

def list():
    list=[]

    for j in range(1,21):
      list.append(j**2)
    print(list[0:5])

list()

问题35(√)

定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在 内)。然后,该功能需要打印列表中的最后5个元素。

def list():
    list=[]

    for j in range(1,21):
      list.append(j**2)
    print(list[15:20])

list()

问题36(√)

定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在内)

def list():
    list=[]

    for j in range(1,21):
      list.append(j**2)
    print(list)

list()

问题38(√)

对于给定的元组(1,2,3,4,5,6,7,8,9,10),编写一个程序以一行打印前半值,然后以一行打印后半值。 提示: 使用[n1:n2]表示法从元组中获取一个切片。

tem =(1,2,3,4,5,6,7,8,9,10)
a=tem[0:5]
b=tem[5:10]
print(a)
print(b)


问题39(√)

问题: 编写程序以生成并打印另一个在给定元组(1,2,3,4,5,6,7,8,9,10)中其值为偶数的元组。 提示: 使用“ for”来迭代元组。使用tuple()从列表中生成一个元组。

tuple1 = (1,2,3,4,5,6,7,8,9,10)
for i in range(len(tuple1)//2):
    print(tuple1[i],end=' ')
print('\n')
for i in range(len(tuple1)//2,len(tuple1)):
    print(tuple1[i],end=' ')

问题40(√)

问题: 编写一个接受字符串作为输入的程序,如果该字符串是“ yes”或“ YES”或“ Yes”,则打印“ Yes”,否 则打印“ No”。 提示: 使用if语句判断条件。

a=input()
if a=='Yes':
    print("Yes")
else:
    print("No")

问题41(√)

问题: 编写一个程序,该程序可以map()创建一个列表,该列表的元素是[1,2,3,4,5,6,7,8,9,10]中的元 素的平方。 提示: 使用map()生成列表。使用lambda定义匿名函数。

def square(x):
    return x**2
a=list(map(lambda x: x ** 2, [1, 2, 3, 4, 5,6,7,8,9,10]))  # 使用 lambda 匿名函数
print(a)

问题42(√)

问题: 编写一个程序,该程序可以map()和filter()组成一个列表,该列表的元素为 [1,2,3,4,5,6,7,8,9,10]中的偶数平方。 提示: 使用map()生成列表。使用filter()过滤列表元素。使用lambda定义匿名函数。

list_1 = [1,2,3,4,5,6,7,8,9,10]
def panduan(numble):
    return numble**2
def panduan_1(numble):
    return not numble&1
print(list(map(panduan,list(filter(panduan_1,list_1)))))

问题43(√)

问题: 编写一个程序,该程序可以filter()创建一个列表,该列表的元素为1到20之间的偶数(均包括 在 内)。 提示: 使用filter()过滤列表中的元素,使用lambda定义匿名函数。

list_1 = [1,2,3,4,5,6,7,8,9,10]
def panduan(numble):
    return numble**2
def panduan_1(numble):
    return not numble&1
print(list(map(panduan,list(filter(panduan_1,list_1)))))

问题44(√)

问题: 编写一个程序,该程序可以map()创建一个列表,该列表的元素为1到20之间的数字平方(均包 括 在内)。 提示: 使用map()生成一个列表。使用lambda定义匿名函数。

def square(x):
    return x**2
a=list(map(lambda x: x ** 2, [1, 2, 3, 4, 5,6,7,8,9,10]))  # 使用 lambda 匿名函数
print(a)

问题45(√)

定义一个名为American的类,该类具有一个称为printNationality的静态方法。

class american():
    def printnational(self):
        print ("可爱淞淞!")
a = american()
a.printnational()

class American(object):
    @staticmethod
    def printNationality():
        print ("可爱捏")

anAmerican = American()
anAmerican.printNationality()
American.printNationality()

问题46(√)

定义一个名为American的类及其子类NewYorker。 提示: 使用类Subclass(ParentClass)定义一个子类。*

class american():
    def printnational(self):
        print ("可爱淞淞")
class newyorker(american):
    def ga(self):
        print ("淞淞可爱")
a = american()
b = newyorker()
a.printnational()
b.ga()

class American(object):
    pass
class NewYorker(American):
    pass
anAmerican = American()
aNewYorker = NewYorker()
print (anAmerican)
print (aNewYorker)

问题47

问题 定义一个名为Circle的类,该类可以由半径构造。Circle类具有一种可以计算面积的方法。 提示 使用def methodName(self)定义一个方法。

问题48

定义一个名为Rectangle的类,该类可以通过长度和宽度来构造。Rectangle类具有可以计算面积 的方法。 提示 使用def methodName(self)定义一个方法。

问题49

问题 定义一个名为Shape的类及其子类Square。Square类具有一个init函数,该函数以长度作为参 数。这两个类都有一个Area函数,该函数可以打印Shape的区域默认为0的形状的区域。 提示 要覆盖超类中的方法,我们可以在超类中定义一个具有相同名称的方法。

问题50

问题 请引发RuntimeError异常。 提示 U使用raise()引发异常。

问题51

问题 编写一个函数以计算5/0并使用try / except捕获异常。 提示 使用try / except捕获异常。

问题52

问题 定义一个自定义异常类,该类将字符串消息作为属性。 提示 要定义自定义异常,我们需要定义一个从Exception继承的类

问题53

问题 假设我们有一些“ username@companyname.com ”格式的电子邮件地址,请编写程序以打印给 定电子邮件地址的用户名。用户名和公司名都仅由字母组成。 示例:如果将以下电子邮件地址作为该程序的输入:

join@google.com

join@google.com

join

提示 使用\ w匹配字母。

问题54

假设我们有一些“ username@companyname.com ”格式的电子邮件地址,请编写程序以打印给 定电子邮件地址的公司名称。用户名和公司名都仅由字母组成。 示例:如果将以下电子邮件地址作为该程序的输入:

join@google.com

输出:

google

问题55(√)

编写一个程序,该程序接受由空格分隔的单词序列作为输入,以仅打印由数字组成的单词。 示例:如果给出以下单词作为程序输入:

2 cats and 3 dogs

然后,程序的输出应为:

[‘2’, ‘3’]

提示 使用re.findall()使用正则表达式查找所有子字符串。

import re

list = input("请输入:")
pattern = "\d+"
ans = re.findall(pattern,list)
print(ans)

问题56(√)

打印一个unicode字符串“ hello world”。

unicodeString = u"hello world!"
print(unicodeString)

问题57

编写程序以读取ASCII字符串并将其转换为utf-8编码的unicode字符串。 提示 使用unicode()/ encode()函数进行转换。

问题58

编写特殊注释以指示Python源代码文件位于unicode中。 提示 使用unicode()函数进行转换。

问题59(√)

编写一个程序,以控制台输入给定的n输入来计算1/2 + 2/3 + 3/4 + … + n / n + 1(n> 0)。 示例:如果将以下n作为程序的输入:

5

然后,程序的输出应为:

3.55

n=eval(input())
s=0
for i in range(1,n+1):
    s+=i/(i+1)
print("%.2f"%s)

问题60(√)

编写程序进行计算:

f(n)=f(n-1)+100 when n>0 and f(0)=0

通过控制台输入给定的n(n> 0)。 示例:如果将以下n作为程序的输入:

5

然后,程序的输出应为:

500

提示 我们可以在Python中定义递归函数。

def f(n):
    if n==0:
        return 0
    else:
        return f(n-1)+100
n=eval(input())
print(f(n))

问题61(√)

斐波那契数列是根据以下公式计算的:

标签: 2408连接器母连接器female

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台