Sự khác biệt giữa Python 2 và 3 ở dạng bảng

Bài viết này được đóng góp bởi Arpit Agarwal. Nếu bạn thích GeeksforGeeks và muốn đóng góp, bạn cũng có thể viết một bài báo và gửi bài viết của mình tới donate@geeksforgeeks. tổ chức. Xem bài viết của bạn xuất hiện trên trang chính của GeeksforGeeks và trợ giúp các Geeks khác

Các biểu thức đại diện cho một thứ gì đó, chẳng hạn như một số, một chuỗi hoặc một thể hiện của một lớp. Bất kỳ giá trị là một biểu thức. Bất cứ điều gì mà làm một cái gì đó là một tuyên bố. Bất kỳ phép gán nào cho một biến hoặc lệnh gọi hàm đều là một câu lệnh. Bất kỳ giá trị nào chứa trong câu lệnh đó trong một biểu thức

Nhận biểu thức trong Python 2

Ở đây, cái gì đã đánh giá biểu thức?

Giả sử chúng ta có một đầu vào trong Python 2 là đầu vào thô sau một số giá trị

  1. X = raw_input ["nhập một số giá trị"]

Nhận biểu thức được đánh giá trong Python 3

Tuy nhiên, trong Python 3, chúng tôi có đầu vào sau một số giá trị

  1. X = đầu vào ["nhập một số giá trị"]

Vì vậy, bất cứ điều gì chúng ta nhập, một giá trị được gán cho biến x, trong cả Python 2 và Python 3. Vì vậy, khi tôi nhập 2*6 trong Python 2, kết quả sẽ là 12, có nghĩa là bạn sẽ nhận được các giá trị được đánh giá

Nhưng trong Python 3, chúng tôi sẽ chạy chương trình này 2*6, sau đó chúng tôi sẽ nhận được kết quả đó trong các giá trị chuỗi giống như “2*6” ở định dạng chuỗi

Vậy làm thế nào bạn sẽ nhận được giá trị được đánh giá trong Python 3? . Khi bạn viết eval trước đầu vào, nó sẽ chuyển thành giá trị được đánh giá trong Python

  1. x= eval[input["nhập một số giá trị"]] = 12

Ví dụ về biểu thức chi tiết của Python 2 và Python 3

  1. name = input["Tên bạn là gì? "]
  2. in ["Xin chào, %s. " %Tên]

  1. Đầu vào. https. //mindmajix. com
  2. đầu ra. Xin chào, https. //mindmajix. com

  1. name = input["Tên bạn là gì? "]
  2. in ["Xin chào, %s. " %Tên]

Vì vậy, đây là sự khác biệt chính giữa Python 2 và Python 3, được đánh giá là một biểu thức

Trong Python 2 print là một câu lệnh trong khi trong Python 3 print là một hàm. Trong Python 2, chúng ta không cần thêm dấu ngoặc đơn nhưng trong Python 3, chúng ta cần viết các giá trị trong dấu ngoặc đơn

  1. Python 2 - in "hello world"
  2. Python 3 - ["xin chào thế giới"]

Hãy chuyển sang điểm khác biệt thứ ba khi chúng ta sử dụng toán tử không bằng trong Python 2. Đối với điều đó, chúng ta phải sử dụng dấu hiệu lớn hơn và nhỏ hơn

Nhưng trong Python 3 có một toán tử chung là dấu chấm than và dấu bằng nên toán tử này được sử dụng trong các ngôn ngữ khác. Đó là lý do tại sao tôi gọi nó là một nhà điều hành chung

  1. Python 2 -  toán tử được dùng cho không bằng
  2. Python 3 -. một toán tử được dùng cho không bằng

  1. 1. = 1. 0
  2. in [Sai]1. = 1. 0
  3. in [Sai]

Hãy chuyển sang điểm khác biệt thứ tư, đó là phạm vi trong Python 2 và Python 3

Một phạm vi được sử dụng trong vòng lặp for để lặp lại các giá trị là một số nguyên. Vì vậy, khi chúng ta sử dụng một phạm vi trong lập trình Python, nó sẽ trả về một danh sách

Vì vậy, ở đây bạn có thể thấy X bằng Phạm vi 10 và khi chúng tôi kiểm tra biến X, nó trả về loại danh sách của chúng tôi, điều đó có nghĩa là trong Python 2 phạm vi là một loại danh sách. Khi tôi viết X, chúng tôi nhận được một danh sách các đối tượng, đó là 0 1 2 3 4 5 6 7 8 9

Vì vậy, bây giờ hãy chuyển sang Python 3 khi chúng ta viết x bằng phạm vi 5,

Vì vậy, giá trị của phạm vi 5 này được gán cho biến X và khi chúng ta kiểm tra loại cho biến X thì nó sẽ trả về chính một đối tượng phạm vi, điều đó có nghĩa là trong Python phạm vi 3 chính là một đối tượng phạm vi, vì vậy đây là những điểm khác biệt chính giữa Python

Ví dụ phạm vi chi tiết của Python 2 và Python 3

Bây giờ, hãy chuyển sang chủ đề đó là cách tự động hóa tập lệnh Python 2 thành mã Python 3

Ở đây, chúng ta có thể Test bằng một chương trình đơn giản như Add 2 Numbers in Python

  1. n1 = 1
  2. n2 = 2
  3. thêm = float[n1] + float[n2]
  4. in ra 'tổng của {0} và {1} là {2}'. định dạng[n1, n2, thêm]

Bây giờ, sử dụng 2 đến 3 Bản dịch, chúng ta có thể chuyển đổi đoạn mã trên

  1. n1 = 1
  2. n2 = 2
  3. thêm = float[n1] + float[n2]
  4. print['tổng của {0} và {1} là {2}'. định dạng[n1, n2, thêm]]

Vì vậy, ở đây chúng ta thấy nó có thể được chuyển đổi thành mã Python 3 x bằng 2 đến 3 trên dòng lệnh, vì vậy đây là cách để chuyển đổi chương trình Python 2 thành Python 3

Python cung cấp công cụ riêng gọi là 2to3. py chạy một loạt tập lệnh để dịch mã Python 2 của bạn thành 3

  • Không hoàn hảo, nhưng nó làm một công việc tuyệt vời
  • Sau khi chuyển đổi, hãy vào và khắc phục sự cố theo cách thủ công

Trong Python 3, hầu hết các vấn đề về hiệu suất đã được khắc phục gần như không đáng kể khi so sánh điểm chuẩn Python 3 hiện tại với Python 2

Một số thay đổi vệ sinh chính là-

  • Dấu ngoặc chức năng in là tùy chọn
  • Chuỗi tiền tố với u để tạo chuỗi Unicode
  • Phép chia số nguyên luôn trả về số nguyên - 5/2=2
  • Raw_input[] đọc chuỗi
  • input[] đánh giá dữ liệu đã đọc
  • máy phát điện. tiếp theo[]
  • In dấu ngoặc chức năng là bắt buộc
  • Chuỗi Unicode theo mặc định
  • Phép chia các số nguyên có thể dẫn đến số float - 5/2=2. 5
  • Raw_input[] không khả dụng
  • Đầu vào luôn đọc chuỗi
  • Tiếp theo [máy phát điện]
  • Py2 thành tiện ích py3
  • Từ điển. phím[] và. values[] trả về dạng xem không phải danh sách
  • Không còn có thể sử dụng các toán tử so sánh trên các phép so sánh không tự nhiên

Ví dụ: Không có < Không có gì sẽ tăng TypeError thay vì trả về false

  • Toán tử định dạng chuỗi phần trăm [%] không được dùng nữa, hãy sử dụng. format[] Hàm hoặc nối

  • Bạn có thể gặp lỗi ở đây và ở đó nếu bạn đang làm việc với Python 2. x một thời gian
  • Chỉ cần Google vấn đề, gần như chắc chắn rằng ai đó cũng gặp phải vấn đề đó khi chuyển sang Python 3

Tôi hy vọng bạn thích đọc Hướng dẫn Python này. Chúng tôi đã đề cập đến tất cả những khác biệt cơ bản giữa Python 2 và Python 3, vì vậy bạn có thể bắt đầu thực hành ngay bây giờ. học tập vui vẻ

Sự khác biệt chính giữa Python 2 và 3 là gì?

Một số thay đổi chính trong Python 3 bao gồm thay đổi khai báo in thành một hàm tích hợp, cải thiện phép chia số nguyên và hỗ trợ Unicode được cải thiện. The nature of these changes is such that Python 3 was incompatible with Python 2, in other words, it is backwards incompatible.

Sự khác biệt giữa Python và Python 3 là gì?

Sự khác biệt cơ bản giữa Python và Python 3 là Python 3 không tương thích với các phiên bản Python cũ hơn. Một thay đổi quan trọng là mã hoạt động trong Python 2. 7 sẽ không hoạt động trong Python 3, chúng cần được viết theo những cách khác nhau

Sự khác biệt giữa mã hóa văn bản trong Python 2 và Python 3 là gì?

Sự khác biệt lớn nhất giữa Python 2 và Python 3 là mã hóa ký tự. Trong khi Python 2 chỉ hỗ trợ bộ ký tự ASCII thì Python 3 hỗ trợ Unicode và linh hoạt hơn nhiều .

Python 2 hay Python 3 cái nào tốt hơn?

Khi nói đến sự khác biệt giữa Python 2 và Python 3 ngày nay, phiên bản Python 3 là người chiến thắng hoàn toàn. Đó là vì Python 2 sẽ không khả dụng sau năm 2020

Chủ Đề