python问题请大家指出问题!

python学习中,跟着课程自己编写了一个简单代码,但是运行结果有误,不知道哪里出现问题,请大家指点!

#!/usr/bin/python
# -*- coding: UTF-8 -*-

str = "999999799999";
print
str.strip('9');  # 去除首尾字符 9
str2 = str.strip('9')
print(str2)
if str2==7:
    print('正确')
else:
    print('错误')
    print('end')



运行结果如下:
7
错误
end

引用 皆我百晓生 小程序回复内容作答:
你的代码存在一些问题:

  1. print 函数是一个可调用的方法,你需要在调用时添加小括号 (),否则它的作用将不会生效。所以,你需要将 print 改为 print(),以正确输出结果。

  2. 当你调用 strip() 方法时,它会返回一个新的副本字符串,而不会改变原始字符串 str 的值。所以,你需要将 str.strip('9') 的结果赋值给另一个变量,比如 str2

  3. 在比较 str2 是否等于 7 时,你使用了 == 运算符,但是在代码中,str2 的值是一个字符串('7'),而不是一个整数。所以,你需要将 '7' 改为 7,以便正确比较。

修正后的代码如下所示:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

str = "999999799999"
print(str.strip('9'))  # 去除首尾字符 9
str2 = str.strip('9')
print(str2)
if int(str2) == 7:
    print('正确')
else:
    print('错误')
    print('end')

希望这能帮到你!

我理解的是,运行结果应该是 7;正确;end