python题库刷题训练选择题,python题库刷题训练源码

大家好,给大家分享一下python题库刷题训练选择题,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!

这不每天晚上下班了无聊,就给大家整理出来了一百道Python必刷题,基本上都做的出来的话,基础彻底没问题了~

送资料

朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

👉[[CSDN大礼包:《python安装包&全套学习资料》免费分享]]安全链接,放心点击

大致涉及到的知识点有:

基础语法、变量类型、运算符、条件判断、循环、字符串、列表、元组、字典、函数、异常、内置函数、面向对象、正则表达式、异常处理…

OK,我们开始今天的正题吧
在这里插入图片描述
第一道题
在这里插入图片描述
友情提示:考虑使用range(begin, end)方法

l=[]
for i in range(2000, 3201):
    if (i%7 == 0) and (i%5 != 0):
        l.append(str(i))
print (','.join(l))

第二道题
在这里插入图片描述
友情提示:在为问题提供输入数据的情况下,应该假设它是控制台输入python画笑脸的源代码。考虑使用dict类型()

print('请输入一个数字:')
n=int(input())
d=dict()
for i in range(1,n+1):
    d[i]=i*i
print(d)

第三道题
在这里插入图片描述
友情提示:在为问题提供输入数据的情况下,假设它是控制台输入。

def fact(x):
    if x == 0:
        return 1
    return x * fact(x - 1)
print('请输入一个数字:')
x=int(input())
print (fact(x))

第四道题
在这里插入图片描述
友情提示:在为问题提供输入数据的情况下,应该假设它是控制台输入,同时方法可以将列表转换为元组;

import re
print('请输入一组数字:')
values=input()
l=values.split(,)
k=re.findall(r'[0-9]+',values)
t=tuple(k)
print(k)
prin(t)

第五道题
在这里插入图片描述
友情提示:使用init方法构造一些参数

class InputOutString(object):
    def __init__(self):
        self.s = 
    def getString(self):
        print('请输入字符串:')
        self.s = input()
    def printString(self):
        print (self.s.upper())
strObj = InputOutString()
strObj.getString()
strObj.printString()

第六道题
在这里插入图片描述
友情提示:如果输出是小数,则应四舍五入到其最近的值(例输出是26.0,则应打印为26)。

import math
c=50
h=30
value = []
print('请输入一组数字:')
items=[x for x in input().split(',')]
for d in items:
    value.append(str(int(round(math.sqrt(2*c*float(d)/h)))))
print (','.join(value))

第七道题
在这里插入图片描述
友情提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。

items=[x for x in input().split(',')]
items.sort()
print (','.join(items))

第八道题
在这里插入图片描述
友情提示:如果要为问题提供输入数据,应该假设它是一个控制台输入,以逗号分隔。

print('请输入两个数字:')
input_str = input()
dimensions=[int(x) for x in input_str.split(',')]
rowNum=dimensions[0]
colNum=dimensions[1]
multilist = [[0 for col in range(colNum)] for row in range(rowNum)]
for row in range(rowNum):
    for col in range(colNum):
        multilist[row][col]= row*col
print (multilist)

第九道题
在这里插入图片描述
友情提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。

lines = []
while True:
    s = input()
    if s:
        lines.append(s.upper())
    else:
        break;
for sentence in lines:
    print(sentence)

第十道题
在这里插入图片描述
友情提示:我们使用set容器自动删除重复的数据,然后使用sort()对数据进行排序。

print('请输入一组字符串:')
s = input()
words = [word for word in s.split( )]
print ( .join(sorted(list(set(words)))))

第十一道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

values = []
for i in range(1000, 3001):
    s = str(i)
    if (int(s[0])%2==0) and (int(s[1])%2==0) and (int(s[2])%2==0) and (int(s[3])%2==0):
        values.append(s)
print (,.join(values))

第十二道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

value = []
print('请输入逗号分隔的4位二进制数:')
items=[x for x in input().split(',')]
for p in items:
    intp = int(p, 2)
    # print(intp)
    if not intp%5:
        value.append(p)
print (','.join(value)

第十三道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

print('请输入:')
s = input()
d={DIGITS:0, LETTERS:0}
for c in s:
    if c.isdigit():
        d[DIGITS]+=1
    elif c.isalpha():
        d[LETTERS]+=1
    else:
        pass
print (字母, d[LETTERS])
print (数字, d[DIGITS])

第十四道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

print('请输入:')
s = input()
d={UPPER CASE:0, LOWER CASE:0}
for c in s:
    if c.isupper():
        d[UPPER CASE]+=1
    elif c.islower():
        d[LOWER CASE]+=1
    else:
        pass
print (UPPER CASE, d[UPPER CASE])
print (LOWER CASE, d[LOWER CASE])

第十五道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

print('请输入一个数字:')
a = input()
n1 = int( %s % a )
n2 = int( %s%s % (a,a) )
n3 = int( %s%s%s % (a,a,a) )
n4 = int( %s%s%s%s % (a,a,a,a) )
print (n1+n2+n3+n4)

第十六道题

使用列表推导输出列表中的每个奇数,该列表由一系列逗号分隔的数字输入。
假设程序输入:1,2,3,4,5,6,7,8,9 输出应该是:1,3,5,7,9

print(输入:)
values = input()
numbers = [x for x in values.split(,) if int(x)%2!=0]
print (,.join(numbers))

在这里插入图片描述
第十七道题

例:如果以下密码作为程序的输入:ABd1234@1,a F1#,2w3E*,2We3345 则程序的输出应该是:ABd1234@1

import re
value = []
print(请输入:)
items=[x for x in input().split(',')]
for p in items:
    if len(p)<6 or len(p)>12:
        continue
    else:
        pass
    if not re.search([a-z],p):
        continue
    elif not re.search([0-9],p):
        continue
    elif not re.search([A-Z],p):
        continue
    elif not re.search([$#@],p):
        continue
    elif re.search(\s,p):
        continue
    else:
        pass
    value.append(p)
print (,.join(value))

第十八道题
在这里插入图片描述
友情提示:使用itemgetter来启用多个排序键。

from operator import itemgetter, attrgetter
l = []
print(请输入:)
while True:
    s = input()
    if not s:
        break
    l.append(tuple(s.split(,)))
print (sorted(l, key=itemgetter(0,1,2)))

第十九道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

netAmount = 0
while True:
    print(请输入:)
    s = input()
    if not s:
        break
    values = s.split( )
    operation = values[0]
    amount = int(values[1])
    if operation==D:
        netAmount+=amount
    elif operation==W:
        netAmount-=amount
    else:
        pass
print (netAmount)

第二十道题
在这里插入图片描述
友情提示:考虑使用yield。

def putNumbers(n):
    i = 0
    while i<n:
        j=i
        i=i+1
        if j%7==0:
            yield j
for i in putNumbers(100):
    print (i)

第二十一道题
在这里插入图片描述
友情提示:如果输入数据被提供给问题,则应该假定它是控制台输入。

import math
pos = [0,0]
print(请输入:)
while True:
    s = input()
    if not s:
        break
    movement = s.split( )
    direction = movement[0]
    steps = int(movement[1])
    if direction==UP:
        pos[0]+=steps
    elif direction==DOWN:
        pos[0]-=steps
    elif direction==LEFT:
        pos[1]-=steps
    elif direction==RIGHT:
        pos[1]+=steps
    else:
        pass
print (int(round(math.sqrt(pos[1]**2+pos[0]**2))))

第二十二道题
在这里插入图片描述

freq = {}   # frequency of words in text
print(请输入:)
line = input()
for word in line.split():
    freq[word] = freq.get(word,0)+1
words = sorted(freq.keys())  #按key值对字典排序
for w in words:
    print (%s:%d % (w,freq[w]))

第二十三道题
在这里插入图片描述
友情提示:内置文档方法是__doc__;

print(abs.__doc__)
print(int.__doc__)
print(input.__doc__)
def square(num):
    '''Return the square value of the input number.
    The input number must be integer.
    '''
    return num ** 2
print(square(2))
print(square.__doc__)

第二十四道题

定义一个类,它具有类参数并具有相同的实例参数。

友情提示:定义一个实例参数,需要在__init__方法中添加它。您可以使用构造参数初始化对象,也可以稍后设置该值

class Person:
    # Define the class parameter name
    name = Person
    def __init__(self, name=None):
        # self.name is the instance parameter
        self.name = name
jeffrey = Person(Jeffrey)
print(%s name is %s % (Person.name, jeffrey.name))
nico = Person()
nico.name = Nico
print(%s name is %s % (Person.name, nico.name))

第二十五道题

定义一个可以计算两个数之和的函数。

友情提示:定义一个带有两个数字作为参数的函数。可以在函数中计算和并返回值。

def SumFunction(number1, number2):
 return number1+number2
print(SumFunction(1,2))

第二十六道题

写一个可以计算数字平方值的方法。

友情提示:使用**运算符

def square(num):
    return num ** 2
print(square(2))
print(square(3))

第二十七道题

定义一个可以将整数转换为字符串并在控制台中打印的函数。

友情提示:使用str()将数字转换为字符串。

def printValue(n):
    print(str(n))
printValue(3)

第二十八道题

定义一个可以将字符串中的数字进行相加的函数。

友情提示:使用int()将字符串转换为数字。

def sum_str(str1):
  len1=len(str1)
  sum = n = 0
  for i in range(len1):
    if 49 <= ord(str1[i]) <= 57:  #判断字符ascii码是否在数字ascii值范围内
      n = int(str1[i]) + n
    else:
      sum = n + sum
      n = 0
  sum = n +sum
  print(sum)
str1 = b532x2x3c4b5
sum_str(str1)

第二十九道题

定义一个函数,它可以接收两个字符串形式的整数并计算它们的和,然后在控制台中输出。

友情提示:使用int()将字符串转换为整数。

def printValue(s1,s2):
    print(int(s1)+int(s2))
printValue(3,4)

第三十道题

定义一个函数,它可以接受两个字符串作为输入,并将它们连接起来,然后在控制台中输出。

友情提示:使用+连接字符串

def printValue(s1,s2):
    print(s1+s2)
printValue(3,4) #34

第三十一道题
在这里插入图片描述
友情提示:使用len()函数获取字符串的长度。

def printValue(s1,s2):
    len1 = len(s1)
    len2 = len(s2)
    if len1>len2:
        print(s1)
    elif len2>len1:
        print(s2)
    else:
        print(s1)
        print(s2)
printValue(one,three)

第三十二道题
在这里插入图片描述
友情提示:使用%运算符检查一个数字是偶数还是奇数。

def checkValue(n):
    if n%2 == 0:
        print(It is an even number)
    else:
        print(It is an odd number)
checkValue(7)

第三十三道题
在这里插入图片描述
使用**运算符得到一个数字的幂。

def printDict():
    d=dict()
    d[1]=1
    d[2]=2**2
    d[3]=3**2
    print(d)
printDict()

第三十四道题
在这里插入图片描述
友情提示:使用dict[key]=value模式将条目放入字典中。使用**操作符获取\*一个数的幂。对循环使用range()。

def printDict():
 d=dict()
 for i in range(1,21):
  d[i]=i**2
 print(d)
printDict()

第三十五道题
在这里插入图片描述

def printDict():
 d=dict()
 for i in range(1,21):
  d[i]=i**2
 for (k,v) in d.items(): 
  print(v)
printDict()

第三十七道题

定义一个函数,它可以生成和打印一个列表,其中的值是1到20之间的数的平方(包括这两个数)。

友情提示:使用**运算符得到一个数字的幂,对于循环使用range(),使用list.append()向列表中添加值。

def printList():
 li=list()
 for i in range(1,21):
  li.append(i**2)
 print(li)
printList()

第三十八道题

定义一个函数,它可以生成一个列表,其中的值是1到20之间的数的平方(包括这两个数),然后函数需要打印列表中的前5个元素。

友情提示:使用**运算符得到一个数字的幂。对循环使用range(),使用list.append()向列表中添加值,使用[n1:n2]对列表进行切片;

def printList():
 li=list()
 for i in range(1,21):
  li.append(i**2)
 print(li[:5])
printList()

第三十九道题

定义一个函数,它可以生成一个列表,其中的值是1到20之间的数的平方(包括这两个数)。然后函数需要打印列表中的最后5个元素。

友情提示:使用**运算符得到一个数字的幂。对循环使用range()。使用list.append()向列表中添加值。使用[n1:n2]对列表进行切片。

def printList():
 li=list()
 for i in range(1,21):
  li.append(i**2)
 print(li[-5:])
printList()

第四十道题

定义一个函数,它可以生成一个列表,其中的值是1到20之间的数的平方(包括这两个数)。然后,该函数需要打印列表中除前5个元素外的所有值。

友情提示:使用**运算符得到一个数字的幂。对循环使用range()。使用list.append()向列表中添加值。使用[n1:n2]对列表进行切片;

def printList():
 li=list()
 for i in range(1,21):
  li.append(i**2)
 print(li[5:])
printList()

第四十一道题

定义一个函数,它可以生成并打印一个元组,其中的值是1到20之间的数的平方(包括这两个数)。

友情提示:使用**运算符得到一个数字的幂。对循环使用range()。使用list.append()向列表中添加值。使用tuple()从列表中获取一个元组。

def printTuple():
 li=list()
 for i in range(1,21):
  li.append(i**2)
 print(tuple(li))
printTuple()

第四十二道题

对于给定的元组(1,2,3,4,5,6,7,8,9,10),编写一个程序,在一行中输出前半部分值,在一行中输出后半部分值。

友情提示:使用[n1:n2]表示法从元组中获取切片。

tp=(1,2,3,4,5,6,7,8,9,10)
tp1=tp[:5]
tp2=tp[5:]
print(tp1)
print(tp2)

第四十三道题

编写程序生成并输出另一个元组,其值是给定元组(1,2,3,4,5,6,7,8,9,10)中的偶数。

友情提示:使用“for”来迭代元组,使用tuple()从列表中生成一个tuple。

tp=(1,2,3,4,5,6,7,8,9,10)
li=list()
for i in range(len(tp)):
 if tp[i]%2==0:
  li.append(tp[i])
tp2=tuple(li)
print(tp2)

第四十四道题

写一个程序,接受一个字符串作为输入,如果字符串是“yes”或“YES”或“Yes”,否则打印“No”。

友情提示:使用if语句判断条件。

s= input()
if s==yes or s==YES or s==Yes:
    print(Yes)
else:
    print(No)

第四十五道题

编写一个程序,可以使用过滤函数过滤列表中的偶数。列表是:[1,2,3,4,5,6,7,8,9,10]。

友情提示:使用filter()过滤列表中的一些元素。使用lambda定义匿名函数。

li = [1,2,3,4,5,6,7,8,9,10]
evenNumbers = filter(lambda x:x%2==0, li)
for even in evenNumbers:
    print(even)

第四十六道题

编写一个程序,可以使用map()构造一个列表,其中的元素是[1,2,3,4,5,6,7,8,9,10]中元素的平方。

友情提示:使用map()生成列表。使用lambda定义匿名函数。

li = [1,2,3,4,5,6,7,8,9,10]
squaredNumbers = map(lambda x:x**2, li)
print(squaredNumbers)

第四十七道题

编写一个程序,它可以map()和filter()生成一个列表,其中的元素是[1,2,3,4,5,6,7,8,9,101中的偶数的平方。

友情提示:使用map()生成列表。使用filter()来过滤列表中的元素。使用lambda定义匿名函数。

li = [1,2,3,4,5,6,7,8,9,10]
evenNumbers = map(lambda x: x**2, filter(lambda x: x%2==0, li))
print(evenNumbers)

第四十八道题

编写一个程序,它可以filter()生成一个列表,其中的元素是1到20之间的偶数(包括两个元素)。

友情提示:使用filter()来过滤列表中的元素。使用lambda定义匿名函数。

evenNumbers = filter(lambda x: x%2==0, range(1,21))
for even in evenNumbers:
    print(even)

第四十九道题
在这里插入图片描述

squaredNumbers = map(lambda x: x**2, range(1,21))
print(squaredNumbers)

第五十道题

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

友情提示:使用@staticmethod装饰器来定义类的静态方法。

class American(object):
    @staticmethod
    def printNationality():
        print(America)
anAmerican = American()
anAmerican.printNationality()
American.printNationality()

第五十一道题

定义一个名为American的类及其子类NewYorker。

友情提示:使用类子类(ParentClass)来定义子类。

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

第五十二道题
在这里插入图片描述

class Circle(object):
    def __init__(self, r):
        self.radius = r
    def area(self):
        return self.radius**2*3.14
aCircle = Circle(2)
print(aCircle.area())

第五十三道题

友情提示:使用def methodName(self)定义一个方法。
在这里插入图片描述

class Rectangle(object):
    def __init__(self, l, w):
        self.length = l
        self.width  = w
    def area(self):
        return self.length*self.width
aRectangle = Rectangle(2,10)
print(aRectangle.area())

第五十四道题

友情提示:要覆盖父类中的方法,可以在父类中定义一个同名的方法。
在这里插入图片描述

class Shape(object):
    def __init__(self):
        pass
    def area(self):
        return 0
class Square(Shape):
    def __init__(self, l):
        Shape.__init__(self)
        self.length = l
    def area(self):
        return self.length*self.length
aSquare= Square(3)
print(aSquare.area())

第五十五道题

请引发RuntimeError异常。

友情提示:使用raise()引发异常。

raise RuntimeError(‘something wrong’)

第五十六道题

编写一个函数来计算5/0,并使用try/except来捕获异常。

友情提示:使用try/exexception捕获异常。

def throws():
    return 5/0
try:
    throws()
except ZeroDivisionError:
    print(division by zero!)
except ExceptionError:
    print('Caught an exception')
finally:
    print('In finally block for cleanup')

第五十七道题

定义一个自定义异常类,它将字符串消息作为属性。

友情提示:要定义一个自定义异常,我们需要定义一个继承自exception的类。

class MyError(Exception):
    My own exception class
    Attributes:
        msg  -- explanation of the error
    
    def __init__(self, msg):
        self.msg = msg
error = MyError(something wrong)

第五十八道题
在这里插入图片描述
友情提示:使用\w来匹配字母。

import re
emailAddress = input()
pat2 = (\w+)@((\w+\.)+(com))
r2 = re.match(pat2,emailAddress)
print(r2.group(1))

第五十九道题
在这里插入图片描述
友情提示:使用\w来匹配字母。

import re
emailAddress = input()
pat2 = (\w+)@(\w+)\.(com)
r2 = re.match(pat2,emailAddress)
print(r2.group(2))

第六十道题
在这里插入图片描述
友情提示:使用re.findall()使用正则表达式查找所有子字符串。

import re
s = input()
print(re.findall(\d+,s))

第六十一道题

打印unicode字符串“hello world”。

友情提示:使用u’strings’格式来定义unicode字符串;

unicodeString = uhello world!
print(unicodeString)

第六十二道题

python中的解码与编码;

友情提示:使用encode()与decode()函数进行转换。

s = '和鲸社区'
enc = s.encode('utf-8')
dec = enc.decode('utf-8')
print(enc)
print(dec)

第六十三道题

编写一个特殊注释来表明Python源代码文件是unicode格式的。

# -*- coding: utf-8 -*-
#----------------------------------------#

第六十四道题
在这里插入图片描述
友情提示:使用float()将整数转换为浮点数。

n=int(input())
sum=0.0
for i in range(1,n+1):
    sum += float(float(i)/(i+1))
print(sum)

第六十五道题
在这里插入图片描述
友情提示:我们可以在Python中定义递归函数。

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

第六十六道题
在这里插入图片描述

def f(n):
    if n == 0: return 0
    elif n == 1: return 1
    else: return f(n-1)+f(n-2)
n=int(input())
print(f(n))

第六十七道题
在这里插入图片描述

def f(n):
    if n == 0: return 0
    elif n == 1: return 1
    else: return f(n-1)+f(n-2)
n=int(input())
values = [str(f(x)) for x in range(0, n+1)]
print(,.join(values))

第六十八道题
在这里插入图片描述
友情提示:使用yield生成生成器中的下一个值。

def EvenGenerator(n):
    i=0
    while i<=n:
        if i%2==0:
            yield i
        i+=1
n=int(input())
values = []
for i in EvenGenerator(n):
    values.append(str(i))
print(,.join(values))

第六十九道题
在这里插入图片描述
友情提示:使用yield生成生成器中的下一个值。

def NumGenerator(n):
    for i in range(n+1):
        if i%5==0 and i%7==0:
            yield i
n=int(input())
values = []
for i in NumGenerator(n):
    values.append(str(i))
print(,.join(values))

第七十道题

请写assert语句来验证列表[2,4,6,8]中的每个数字都是偶数。

友情提示:使用“断言表达式”进行断言。

li = [2,4,6,8]
for i in li:
    assert i%2==0

第七十一道题
在这里插入图片描述
友情提示:使用eval()计算表达式。

expression = input()
print(eval(expression))

第七十二道题
在这里插入图片描述

import math
def bin_search(li, element):
    bottom = 0
    top = len(li)-1
    index = -1
    while top>=bottom and index==-1:
        mid = int(math.floor((top+bottom)/2.0))
        if li[mid]==element:
            index = mid
        elif li[mid]>element:
            top = mid-1
        else:
            bottom = mid+1
    return index
li=[2,5,7,9,11,17,222]
print(bin_search(li,11))
print(bin_search(li,12))

第七十三道题

随机生成1,100内的一个整数;

友情提示:random.randint()

import random
random.randint(a=1,b=100)

第七十四道题
在这里插入图片描述

import random
print(random.random()*100)

第七十五道题
在这里插入图片描述

import random
print(random.random()*100-5)

第七十六道题
在这里插入图片描述

import random
print(random.choice([i for i in range(11) if i%2==0]))

第七十七道题
在这里插入图片描述

import random
print(random.choice([i for i in range(201) if i%5==0 and i%7==0]))

第七十八道题
在这里插入图片描述

import random
print(random.sample(range(100), 5))

第七十九道题
在这里插入图片描述

import random
print(random.sample([i for i in range(100,201) if i%2==0], 5))

第八十道题
在这里插入图片描述

import random
print(random.sample([i for i in range(1,1001) if i%5==0 and i%7==0], 5))

第八十一道题
在这里插入图片描述

import random
print(random.randrange(7,16))

第八十二道题
在这里插入图片描述
友情提示:使用zlib.compress()和zlib.decompress()来压缩和解压缩字符串。

import zlib
s = b'hello world!hello world!hello world!hello world!'
t = zlib.compress(s)
print(t)
print(zlib.decompress(t))

第八十三道题

请编写一个程序打印100次“1+1”执行的运行时间。

友情提示:使用timeit()函数测量运行时间。

from timeit import Timer
t = Timer(for i in range(100):1+1)
print(t.timeit())

第八十四道题

请编写一个程序洗牌和打印列表[3,6,7,8]。

友情提示:使用shuffle()函数洗牌列表。

from random import shuffle
li = [3,6,7,8]
shuffle(li)
print(li)

第八十五道题

请编写一个程序洗牌和打印列表[3,6,7,8]。

友情提示:使用shuffle()函数洗牌列表。

from random import shuffle
li = [3,6,7,8]
shuffle(li)
print(li)

第八十六道题
在这里插入图片描述
友情提示:使用list[index]表示法从列表中获取元素。

subjects=[I, You]
verbs=[Play, Love]
objects=[Hockey,Football]
for i in range(len(subjects)):
    for j in range(len(verbs)):
        for k in range(len(objects)):
            sentence = %s %s %s. % (subjects[i], verbs[j], objects[k])
            print(sentence)

第八十七道题

请写一个程序打印列表,删除后删除偶数[5,6,77,45,22,12,24]。

友情提示:使用列表理解从列表中删除一组元素。

li = [5,6,77,45,22,12,24]
li = [x for x in li if x%2!=0]
print(li)

第八十八道题
在这里插入图片描述
友情提示:使用列表理解从列表中删除一组元素。

li = [12,24,35,70,88,120,155]
li = [x for x in li if x%5!=0 and x%7!=0]
print(li)

第八十九道题
在这里插入图片描述
友情提示:使用列表理解从列表中删除一组元素。使用enumerate()来获取(索引,值)元组。

li = [12,24,35,70,88,120,155]
li = [x for (i,x) in enumerate(li) if i%2!=0]
print(li)

第九十道题

使用列表理解,编写一个程序生成一个358三维数组,每个元素为0。

友情提示:使用列表理解来创建数组。

array = [[ [0 for col in range(8)] for col in range(5)] for row in range(3)]
print(array)

第九十一道题
在这里插入图片描述
友情提示:使用列表理解从列表中删除一组元素。使用enumerate()来获取(index, value)元组。

li = [12,24,35,70,88,120,155]
li = [x for (i,x) in enumerate(li) if i not in (0,4,5)]
print(li)

第九十二道题
在这里插入图片描述
友情提示:使用列表的remove方法删除一个值。

li = [12,24,35,24,88,120,155]
li = [x for x in li if x!=24]
print(li)

第九十三道题
在这里插入图片描述
友情提示:使用set()和&=进行集合相交操作。

set1=set([1,3,6,78,35,55])
set2=set([12,24,35,24,88,120,155])
set1 &= set2
li=list(set1)
print(li)

第九十四道题
在这里插入图片描述
友情提示:使用set()来存储一些没有重复的值。

def removeDuplicate( li ):
    newli=[]
    seen = set()
    for item in li:
        if item not in seen:
            seen.add( item )
            newli.append(item)
    return newli
li=[12,24,35,24,88,120,155,88,120,155]
print(removeDuplicate(li))

第九十五道题
在这里插入图片描述
友情提示:使用子类(Parentclass)来定义子类。

class Person(object):
    def getGender( self ):
        return Unknown
class Male( Person ):
    def getGender( self ):
        return Male
class Female( Person ):
    def getGender( self ):
        return Female
aMale = Male()
aFemale= Female()
print(aMale.getGender())
print(aFemale.getGender())

第九十六道题
在这里插入图片描述
友情提示:使用dict存储键/值对。使用dict.get()方法查找具有默认值的键。

dic = {}
s=input()
for s in s:
    dic[s] = dic.get(s,0)+1
print('\n'.join(['%s,%s' % (k, v) for k, v in dic.items()]))

第九十七道题
在这里插入图片描述
友情提示:使用list[::-1]以相反的顺序迭代一个列表。

s=input()
s = s[::-1]
print(s)

第九十八道题
在这里插入图片描述
友情提示:使用list[:2]来迭代第2步中的列表。

s=input()
s = s[::2]
print(s)

第九十九道题

请写一个程序,打印[1,2,3]的所有排列;

友情提示:使用itertools.permutations)得到list的排列。

import itertools
print(list(itertools.permutations([1,2,3])))

第一百道题
在这里插入图片描述
友情提示:使用for循环来迭代所有可能的解决方案。

def solve(numheads,numlegs):
    ns='No solutions!'
    for i in range(numheads+1):
        j=numheads-i
        if 2*i+4*j==numlegs:
            return i,j
    return ns,ns

numheads=35
numlegs=94
solutions=solve(numheads,numlegs)
print(solutions)

兄弟们有看完的没有,确实有点多,点个收藏慢慢看呗~

  • 20
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值