作业day06
1.定义一个函数,该函数可以实现在内部输入一个信息,如何该信息不能转换为正整数,则重新输入,直到能转换为正整数,则对外返回转换的正整数
def positive_integer():
while True:
num = input("请输入一个信息:(最好是正整数)")
if eval(num) == 0:
continue
if num.isdigit() == True:
return num
break
elif num.isalnum()==True:
continue
elif abs(round(eval(num), 0)) > 0:
return int(abs(round(eval(num), 0)))
break
else:
continue
print(positive_integer())
2.定义一个函数,该函数可以实现在内部输入一个信息,如何该信息不能转换为负整数,则重新输入,直到能转换为负整数,则对外返回转换的负整数
def negative_integer():
while True:
num = input("请输入一个信息:(最好是负整数)")
if eval(num) == 0:
continue
if num.isdigit() == True:
return -int(num)
break
elif num.isalnum() == True:
continue
elif abs(round(eval(num), 0)) > 0:
return -int(abs(round(eval(num), 0)))
break
else:
continue
print(negative_integer())
3.定义一个函数,实现外界传入一个信息,内部判断是否能被转换为正整数,返回True | Flase信息
def is_positive_integer():
while True:
num = input("请输入一个信息:(最好是正整数)")
if eval(num) == 0:
return False
if num.isdigit() == True:
return True
# break
elif num.isalnum() == True:
return False
elif abs(round(eval(num), 0)) > 0:
return True
# break
else:
return False
print(is_positive_integer())
4.定义一个函数,实现外界传入一个信息,内部判断是否能被转换为负整数,返回True | Flase信息
def is_negative_integer():
while True:
num = input("请输入一个信息:(最好是负整数)")
if eval(num) == 0:
return False
if num.isdigit() == True:
return True
# break
elif num.isalnum() == True:
return False
elif abs(round(eval(num), 0)) > 0:
return True
# break
else:
return False
print(is_negative_integer())
5.定义一个函数,实现传入一个整型数字,判断并直接打印该数字是否是奇数还是偶数
def odd_even_number():
num = eval(input("请输入一个整型数字:"))
if num % 2 == 0:
return (str(num) + "是偶数")
else:
return (str(num) + "是奇数")
print(odd_even_number())
6.写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def list_len(*p):
for i in p:
# print(i)
l = len(i)
if l > 2:
return (i[:2])
else:
return (i)
ret = list_len([11, 22, 33, 44, 55])
print(ret)
7.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def list(arg):
ret = []
for i in range(len(arg)):
if i % 2 == 1:
ret.append(arg[i])
else:
pass
return ret
li = [11, 22, 33, 44, 55]
r = list(li)
print(li)
print(r)
8.定义一个函数,只要传入 "k1:v1,...,kn:vn" 这样固定格式的字符串,都可以将其转换为 {'k1':'v1',...,'kn':'vn'}这样的字典并返回
def str_to_dict(user_input):
x = {}
for i in user_input.split(','):
k, v = i.split('😂
x[k] = v
return (x)
print(str_to_dict('k1:v1,k2:v2')