Python​ 重解零基础100题(5)

简介: Python​ 重解零基础100题(5)

第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()


我的答案:

>>> tuple(i**2 for i in range(1,21))



第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)


我的答案:同上

1. >>> tp=*range(1,11),
2. >>> tp
3. (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
4. >>> tp[:5]
5. (1, 2, 3, 4, 5)
6. >>> tp[5:]
7. (6, 7, 8, 9, 10)
8. >>>




第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)



我的答案:

1. >>> tp=*range(1,11),
2. >>> tuple(i for i in tp if i%2==0)
3. (2, 4, 6, 8, 10)
4. >>>




第44题


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

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

1. s= input()
2. if s=="yes" or s=="YES" or s=="Yes":
3.     print("Yes")
4. else:
5.     print("No")



我的答案:

1. >>> s = input()
2. Yes
3. >>> 'Yes' if s in ["yes","YES","Yes"] else 'No'
4. 'Yes'
5. >>>




第45题


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

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


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



我的答案:

1. >>> [_ for _ in filter(lambda x:not x%2, [*range(1,11)])]
2. [2, 4, 6, 8, 10]
3. >>>



第46题


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

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


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


我的答案:

1. >>> [_ for _ in map(lambda x:x**2, [*range(1,11)])]
2. [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
3. >>>




第47题


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

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

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


我的答案:

1. >>> [_ for _ in map(lambda x:x**2,filter(lambda x:not x%2, [*range(1,11)]))]
2. [4, 16, 36, 64, 100]
3. >>>



第48题


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

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

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


略,同45



第49题

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

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

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


略,同46




第50题

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

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

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


目录
相关文章
|
存储 索引 Python
Python​ 重解零基础100题(10-2)
Python​ 重解零基础100题(10-2)
74 0
|
存储 Python
Python​ 重解零基础100题(10)
Python​ 重解零基础100题(10)
83 0
|
索引 Python
Python​ 重解零基础100题(9)
Python​ 重解零基础100题(9)
78 0
|
索引 Python
Python​ 重解零基础100题(8)
Python​ 重解零基础100题(8)
92 0
|
Python
Python​ 重解零基础100题(7)
Python​ 重解零基础100题(7)
127 0
|
Python
Python​ 重解零基础100题(6)
Python​ 重解零基础100题(6)
74 0
|
Python
Python​ 重解零基础100题(4)
Python​ 重解零基础100题(4)
93 0
|
机器人 Python
Python​ 重解零基础100题(3)
Python​ 重解零基础100题(3)
123 0
|
JSON 数据安全/隐私保护 数据格式
Python​ 重解零基础100题(2)
Python​ 重解零基础100题(2)
235 0
|
Python 容器
Python​ 重解零基础100题(1)
Python​ 重解零基础100题(1)
142 0