zwplebron 发表于 2020-8-24 10:36:49

纯小白,请问下各位大神我这个哪里错了啊?

程序:
filename = 'pi_million_digits.txt'

with open(filename) as file_object:
        lines = file_object.readlines()

pi_string = ''
for line in lines:
        pi_string += line.strip()

birthday = input("Enter your birthday, in the form mmddyy: ")
if birthday in pi_string:
        print("Your birthday appears in the first million digits of pi!")
else:
        print("Your birthday does not appear in the first million digits of pi.")


报错:
Enter your birthday, in the form mmddyy: 981030
Traceback (most recent call last):
File "pi_string.py", line 11, in <module>
    if birthday in pi_string:
TypeError: 'in <string>' requires string as left operand, not int

zwplebron 发表于 2020-8-24 10:39:31

zwplebron 发表于 2020-8-24 10:45:12

{:10_269:}

Twilight6 发表于 2020-8-24 10:58:21



你的文件内容是什么?

zwplebron 发表于 2020-8-24 11:04:56

Twilight6 发表于 2020-8-24 10:58
你的文件内容是什么?

就是圆周率

Twilight6 发表于 2020-8-24 11:15:42

zwplebron 发表于 2020-8-24 11:04
就是圆周率



代码运行没问题,你的文本内容是什么样的?就是 3.1415926.... 这样一直下去的吗?

疾风怪盗 发表于 2020-8-24 11:16:39

看这错误提示,意思你输入的是整型,但是input输入应该是字符型,好像也没做转换,你type()看看 birthday 和 pi_string数据类型有没有问题

你要找出生年月是不是在圆周率里,怎么不用find(),不是还可以出来在第几位么

hrp 发表于 2020-8-24 11:17:31

报错是:in 字符串的左操作数要求也是字符串,不能是int。
但没看出来你的输入在哪里转换成int了,怀疑你发的代码不是报错的代码。

zwplebron 发表于 2020-8-24 11:24:05

Twilight6 发表于 2020-8-24 11:15
代码运行没问题,你的文本内容是什么样的?就是 3.1415926.... 这样一直下去的吗?

对的,我是照着书上打的代码,然后圆周率的文件也是从书上给的网址下载的文件,所以我也觉得应该没问题,可就一运行就出错{:10_266:}

疾风怪盗 发表于 2020-8-24 11:26:59

zwplebron 发表于 2020-8-24 11:24
对的,我是照着书上打的代码,然后圆周率的文件也是从书上给的网址下载的文件,所以我也觉得应该没问题, ...

你下载的文件,传上来看看,或者下载的网址,或者内容截个图看看怎么样的

1q23w31 发表于 2020-8-24 11:27:34

zwplebron 发表于 2020-8-24 11:24
对的,我是照着书上打的代码,然后圆周率的文件也是从书上给的网址下载的文件,所以我也觉得应该没问题, ...

把文件传一下,用网盘

zwplebron 发表于 2020-8-24 11:39:11

疾风怪盗 发表于 2020-8-24 11:16
看这错误提示,意思你输入的是整型,但是input输入应该是字符型,好像也没做转换,你type()看看 birthday...

我是照着书学的,书上是这么教的我就暂且先这么打的,可能我学的还不是太深吧{:10_277:}

zwplebron 发表于 2020-8-24 11:43:23

hrp 发表于 2020-8-24 11:17
报错是:in 字符串的左操作数要求也是字符串,不能是int。
但没看出来你的输入在哪里转换成int了,怀疑你 ...

就是报错的代码啊

Twilight6 发表于 2020-8-24 11:44:47

zwplebron 发表于 2020-8-24 11:39
我是照着书学的,书上是这么教的我就暂且先这么打的,可能我学的还不是太深吧



不是你学的问题,是文件问题,你用我这个文件试试吧

刚刚上网找的,也不太知道是多少位的圆周率数



先解压,然后代码打开这个文件就行


zwplebron 发表于 2020-8-24 11:58:57

我发现我用idle运行就没错,用sublime运行就报错。。。。。。

疾风怪盗 发表于 2020-8-24 12:00:52

zwplebron 发表于 2020-8-24 11:58
我发现我用idle运行就没错,用sublime运行就报错。。。。。。

一直用的pycharm社区免费版,蛮好用的,VScode也可以,有很多插件
页: [1]
查看完整版本: 纯小白,请问下各位大神我这个哪里错了啊?