2013-02-12 74 views
8

Tôi có mã python sau trong python 2.7.3, tôi gần đây đã sử dụng một máy tính xách tay mới có python 3.3, tôi không nghĩ rằng tôi nên hạ xuống trở lại python 2.7.3 . Mã này làsự khác biệt giữa python 2.7.3 và python 3.3

: -

nm = input(“enter file name “) 

str = raw_input(“enter ur text here: \n”) 

f = open(nm,”w”) 

f.write(str) 

f.close() 

print “1.See the file\n” 

print “2.Exit\n” 

s = input(“enter ur choice “) 

if s == 1 : 

    fi = open(nm,”r”) 

    cont = fi.readlines() 

for i in cont: 

    print i 

else : 

    print “thank you “ 

Xin cho biết những thay đổi tôi nên làm sao cho nó chạy một cách dễ dàng mà không cần bất kỳ lỗi là gì.

+0

Có rất nhiều khác biệt nhỏ. Đọc sách! http://python3porting.com/ –

Trả lời

16
  • raw_input() không tồn tại trong Python 3, sử dụng input() thay vì:

    str = input("enter ur text here: \n") 
    
  • input() không đánh giá giá trị nó phân tích bằng Python 3, sử dụng eval(input()) thay vì:

    s = eval(input("enter ur choice ")) 
    
  • print() là một hàm trong Python 3 (đó là một câu lệnh trong Python 2), s o bạn phải gọi nó là:

    print("1.See the file\n") 
    print("2.Exit\n") 
    
    print(i) 
    
    print("thank you ") 
    
1

Để mã của bạn hoạt động bình thường trong Python 3, luôn sử dụng input() thay vì raw_input() vì hàm sau không còn tồn tại nữa. Ngoài ra, câu lệnh print đã được thay thế bằng một hàm print().

3
raw_input() 

trở thành

input() 

print " " 

trở thành

print() 

Hy vọng điều này sẽ hữu ích, nhưng bạn có thể tìm thêm thông tin về chuyển đổi tại http://python3porting.com/ :)

Các vấn đề liên quan