关于号码百事通的问题
来源:4-3 实操实现:号码百事通功能
Kepler_
2019-12-02 22:23:16
def k_c(l):
import random
str1 = "匪警电话:110,急救电话:120,消防电话:119,交通电话122110"
r = str1.split(",")
# print(r)
for i in r:
if i.find(l) != -1:
print(i)
k_c(110)
老师能不能解释一下,我不太懂它的意思,为什么在这里的if i.find(l) != -1: 在这里是错误的
而在循坏语句却能执行???
def i(n):
for j in range(0, n):
for i in range(0, 6):
import random
r = random.randint(1, 33)
print(r, end=" ")
d = random.randint(1, 16)
print(d)
i(4)
然而这个却完好无事,为什么对比下面这个,上面那个却不能执行呢???老师请解释一下,小白表示不太懂~
2回答
同学,你好。find()中的参数应为字符串类型的数据,而同学在调用时传入的是110,为int类型的数据,因此会报错。
在while循环中,调用k_c()时传入的参数g是通过input()函数输入的值,为字符串类型,因此在循环中不会报错

修改方法:

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
Kepler_
提问者
2019-12-02
while True:
print("1-双色球")
print("2-号码百事通")
print("3-明日天气预报")
c = input("请输入一个编码号:")
c = int(c)
if c == 1:
f = input("请输入您需要生成多少:")
f = int(f)
i(f)
elif c == 2:
g = input("请输入您需要查找的数:")
k_c(g)
老师,这是我的那个循环语句,嘻嘻,请老师解析一下,我上面的问题~~~
相似问题