对于需要在Python 3.5上运行的代码,需要考虑以下问题:

  1. print语句的更改

在Python 3.5中,print语句需要用括号括起来,例如:

Python 2.x:

print "Hello, World!"

Python 3.x:

print("Hello, World!")
  1. 字符串编码

在Python 3.x中,字符串默认使用Unicode编码,而在Python 2.x中,默认使用ASCII编码。因此,在Python 3.x中,不需要使用u前缀来指定Unicode字符串。

Python 2.x:

print u"你好,世界!"

Python 3.x:

print("你好,世界!")
  1. xrange函数的更改

在Python 2.x中,xrange函数用于生成一个范围内的整数序列,而在Python 3.x中,xrange函数被range函数取代。

Python 2.x:

for i in xrange(10):
    print i

Python 3.x:

for i in range(10):
    print(i)
  1. Division操作符的更改

在Python 2.x中,整数之间的除法操作会得到一个整数结果,而在Python 3.x中,整数之间的除法操作会得到一个浮点数结果。因此,在Python 3.x中,需要使用//操作符来进行整数除法。

Python 2.x:

print 5/2 # 输出2

Python 3.x:

print(5/2) # 输出2.5
print(5//2) # 输出2
  1. input函数的更改

在Python 2.x中,input函数获取的输入会被解释为Python代码,而在Python 3.x中,input函数获取的输入会被解释为字符串。因此,在Python 3.x中,需要使用eval函数来将字符串转换为Python代码。

Python 2.x:

name = input("What is your name? ")
print "Hello, " + name + "!"

Python 3.x:

name = eval(input("What is your name? "))
print("Hello, " + name + "!")

以上是一些常见的Python 2.x和Python 3.x之间的差异,需要根据具体情况进行修改

更改其代码使其能够在Python35上运行

原文地址: http://www.cveoy.top/t/topic/hstF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录