zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

2023-09-14 09:01:29 时间

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

我的答案:

>>> s = input('输入2个字符串以逗号分隔:').split(',')
输入2个字符串以逗号分隔:abc,123
>>> print('\n'.join(s) if len(s[0])==len(s[1]) else s[0] if len(s[0])>len(s[1]) else s[1])
abc
123
>>>

或:

>>> s = input('输入2个字符串以逗号分隔:').split(',')
输入2个字符串以逗号分隔:abc,123
>>> a,b=len(s[0]),len(s[1])
>>> print(['\n'.join(s),s[0],s[1]][[a==b,a>b,a<b].index(True)])
abc
123
>>> 

第32题

问题:定义一个函数,它可以接受一个整数作为输入,如果这个数字是偶数,则输出“它是偶数”,否则输出“它是奇数”。

提示:使用%运算符检查一个数字是偶数还是奇数。

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

我的答案:

>>> def checkValue(n):
	return f"它是{'偶奇'[n%2]}数"

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

我的答案:

>>> {i:i**2 for i in range(1,4)}
{1: 1, 2: 4, 3: 9}
>>> 

第34题

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

提示:使用dict[key]=value模式将条目放入字典中。使用**操作符获取*一个数的幂。对循环使用range()。

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

略,与33题差不多

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

我的答案:

>>> [i for i in {i:i**2 for i in range(1,21)}.values()]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400]
>>> 

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

我的答案:

>>> [i for i in {i:i**2 for i in range(1,21)}.keys()]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
>>> 

第37题

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

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

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

我的答案:

>>> [i**2 for i in range(1,21)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400]
>>> 

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

我的答案:

>>> [i**2 for i in range(1,21)][:5]
[1, 4, 9, 16, 25]
>>> 

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

我的答案:

>>> [i**2 for i in range(1,21)][-5:]
[256, 289, 324, 361, 400]
>>> 

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

我的答案:

>>> [i**2 for i in range(1,21)][5:]
[36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400]
>>>