问题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
输出:
问题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(√)
斐波那契数列是根据以下公式计算的: