Python零基础编程【26-50】题

本专栏主要涉及到100道Python零基础编程题,大部分题型翻译于Github上的100+ Python challenging programming exercises,如果小伙伴对于英语没有阅读障碍,可以去Github上阅读。专栏共有100题,分为四章,每章25道题;本篇博客为Python零基础编程的第二篇【26-50】;好了,废话不多说,开始展开;


和鲸社区链接Python零基础100题,无忌,让为师看看你还记得多少

和鲸社区聚集了大量的数据爱好者和数据从业者,社区内有很多优质的数据分析Python项目,我也是在里面学到很多数据相关的知识呀,真的是受益良多,对数据感兴趣的小伙伴可以去玩一玩,与其他小伙伴一起学习、交流、参加训练营以及参加比赛等,探索数据的新世界,快来跟我一起加入【和鲸社区把!


第一篇:Python零基础编程【1-25】题

第二篇:Python零基础编程【26-50】题

第三篇:Python零基础编程【51-75】题

第四篇:Python零基础编程【76-100】题


第26题

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

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

第27题

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

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

第28题

问题:定义一个可以将字符串中的数字进行相加的函数。
提示:使用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)

第29题

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

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

第30题

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

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

第31题

问题:定义一个函数,它可以接受两个字符串作为输入,并在控制台中以最大长度打印字符串。如果两个字符串长度相同,则函数应逐行打印所有字符串。
提示:使用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")

第32题

问题:定义一个函数,它可以接受一个整数作为输入,如果这个数字是偶数,则输出“它是偶数”,否则输出“它是奇数”。
提示:使用%运算符检查一个数字是偶数还是奇数。

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

第33题

问题:定义一个函数,它可以打印一个字典,其中键是1到3之间的数字(包括在内),值是键的平方。
提示:使用dict[key]=value模式将条目放入字典中。
使用**运算符得到一个数字的幂。

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

第34题

问题:定义一个函数,它可以打印一个字典,其中键是1到20之间的数字(包括在内),值是键的平方。
提示:使用dict[key]=value模式将条目放入字典中。使用**操作符获取*一个数的幂。对循环使用range()。

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

第35题

问题:定义一个函数,它可以生成一个字典,其中键是1到20之间的数字(包括在内),值是键的平方。函数只输出值即可。
提示:使用dict[key]=value模式将条目放入字典中。使用**操作符获取*一个数的幂。对于循环使用range()。使用keys()迭代字典中的键。我们还可以使用item()来获取键/值对。

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

第36题

问题:定义一个函数,它可以生成一个字典,其中键是1到20之间的数字(包括在内),值是键的平方。函数只打印键即可;
提示:使用dict[key]=value模式将条目放入字典中。使用**运算符得到一个数字的幂,对循环使用range(),使用keys()迭代字典中的键,我们还可以使用item()来获取键/值对。

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

第37题

问题:定义一个函数,它可以生成和打印一个列表,其中的值是1到20之间的数的平方(包括这两个数)。
提示:使用**运算符得到一个数字的幂,对于循环使用range(),使用list.append()向列表中添加值。

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

第38题

问题:定义一个函数,它可以生成一个列表,其中的值是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()

第39题

问题:定义一个函数,它可以生成一个列表,其中的值是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()

第40题

问题:定义一个函数,它可以生成一个列表,其中的值是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()

第41题

问题:定义一个函数,它可以生成并打印一个元组,其中的值是1到20之间的数的平方(包括这两个数)。
提示:使用**运算符得到一个数字的幂。对循环使用range()。使用list.append()向列表中添加值。使用tuple()从列表中获取一个元组。

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

第42题

问题:对于给定的元组(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)

第43题

问题:编写程序生成并输出另一个元组,其值是给定元组(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)

第44题

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

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

第45题

问题:编写一个程序,可以使用过滤函数过滤列表中的偶数。列表是:[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)

第46题

问题:编写一个程序,可以使用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)

第47题

问题:编写一个程序,它可以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)

第48题

问题:编写一个程序,它可以filter()生成一个列表,其中的元素是1到20之间的偶数(包括两个元素)。
提示:使用filter()来过滤列表中的元素。使用lambda定义匿名函数。

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

第49题

问题:编写一个程序,它可以使用map()生成一个列表,其中的元素是1到20之间的数的平方(包括两个数)。
提示:使用map()生成列表。使用lambda定义匿名函数。

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

第50题

问题:定义一个名为American的类,它有一个名为printNationality的静态方法。
提示:使用@staticmethod装饰器来定义类的静态方法。

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

好了,到这里为止,Python零基础编程100题第二篇【26-50】题已经结束了,小伙伴们好好练习,先自己思考思考,不会做的情况下在看答案哦,这样才能够提高的更快!如果哪里有疑问的地方,欢迎在评论区留言,我会不断完善的!

                       来都来了,确定不留下点什么嘛,嘻嘻~

                                     

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数分小白龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值