Hoán đổi hai biến đề cập đến việc trao đổi lẫn nhau các giá trị của các biến. Nói chung, điều này được thực hiện với dữ liệu trong bộ nhớ
Phương pháp đơn giản nhất để hoán đổi hai biến là sử dụng biến tạm thời thứ ba
define swap[a, b] temp := a a := b b := temp
Giải pháp mẫu-1
Mã Python
a = 30
b = 20
print["\nBefore swap a = %d and b = %d" %[a, b]]
a, b = b, a
print["\nAfter swaping a = %d and b = %d" %[a, b]]
print[]
Đầu ra mẫu
Before swap a = 30 and b = 20 After swaping a = 20 and b = 30
Trực quan hóa việc thực thi mã Python
Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên
Dung dịch mẫu-2
Mã Python
x = 34
y = 56
print["Initial Value of x =", x]
print["Initial Value of y =", y]
temp = x
x = y
y = temp
print["\nAfter swaping value of x =", x]
print["After swaping value of y =", y]
Đầu ra mẫu
Initial Value of x = 34 Initial Value of y = 56 After swaping value of x = 56 After swaping value of y = 34
Trực quan hóa việc thực thi mã Python
Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên
Trình chỉnh sửa mã Python
Có một cách khác để giải quyết giải pháp này?
Trước. Viết chương trình Python để tạo một bản sao mã nguồn của chính nó
Kế tiếp. Viết chương trình Python để định nghĩa một chuỗi chứa các ký tự đặc biệt dưới nhiều dạng khác nhau
Mức độ khó của bài tập này là gì?
Dễ dàng trung bình khóKiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource
Theo dõi chúng tôi trên Facebook và Twitter để cập nhật thông tin mới nhất.
con trăn. Lời khuyên trong ngày
Kwarg
**kwargs và *args là các đối số hàm có thể rất hữu ích
Chúng khá ít được sử dụng và cũng thường không được hiểu rõ
Hãy cố gắng giải thích kwargs là gì và cách sử dụng chúng
- Trong khi *args được sử dụng để truyền các đối số với số lượng không xác định cho các hàm, thì **kwargs được sử dụng để làm điều tương tự nhưng với các đối số được đặt tên
- Vì vậy, nếu *args là một danh sách được truyền dưới dạng đối số, thì bạn có thể coi **kwargs như một từ điển được truyền dưới dạng đối số cho một hàm
- Bạn có thể sử dụng các đối số tùy thích miễn là bạn tuân theo đúng thứ tự. arg1, arg2, *args, **kwargs. Chỉ sử dụng một trong số đó là được nhưng bạn không thể trộn thứ tự, chẳng hạn như bạn không thể có. function[**kwargs, arg1], đó sẽ là một sai lầm lớn trong Python
- Một vi dụ khac. Bạn có thể thực hiện function[*args,**kwargs] vì nó tuân theo đúng thứ tự
- Đây là một ví dụ. Giả sử các vệ tinh được cung cấp tên và trọng lượng tính bằng tấn ở định dạng từ điển. Mã in trọng lượng của chúng dưới dạng kilôgam cùng với tên của chúng
def payloads[**kwargs]: for key, value in kwargs.items[]: print[ key+" |||", float[value]*100] payloads[NavSat1 = '2.5', BaysatG2 = '4']
đầu ra
NavSat1 ||| 250.0 BaysatG2 ||| 400.0
Vì chức năng trên sẽ hoạt động với bất kỳ số lượng khóa từ điển nào, nên **kwargs có ý nghĩa hoàn hảo thay vì truyền đối số với số lượng cố định
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách hoán đổi hai biến trong chương trình Python. Giả sử chúng ta có hai biến P và Q; . Chúng ta cũng sẽ thảo luận về các phương thức khác nhau trong Python để thực hiện tác vụ này
Phương pháp 1. Bằng cách sử dụng phương pháp Naïve
Trong phương pháp này, cách tiếp cận ngây thơ sẽ lưu trữ giá trị của biến P trong một biến tạm thời, sau đó nó sẽ gán biến P với giá trị của biến Q. Sau đó, nó sẽ gán giá trị của biến tạm thời cho biến Q, điều này sẽ dẫn đến việc hoán đổi giá trị của cả hai biến
Thí dụ
đầu ra
Please enter value for P: 13 Please enter value for Q: 43 The Value of P after swapping: 43 The Value of Q after swapping: 13
Phương pháp 2. Bằng cách sử dụng toán tử dấu phẩy
Chúng ta có thể sử dụng toán tử dấu phẩy. Chúng ta không cần sử dụng biến thứ ba để hoán đổi giá trị của hai biến cho phương thức này
Thí dụ
đầu ra
________số 8_______
Phương pháp 3. Bằng cách sử dụng phương pháp XOR
Chúng ta cũng có thể sử dụng phương thức XOR bitwise để hoán đổi hai biến. XOR của hai biến P và Q sẽ trả về số có tất cả các bit là 1 bất cứ khi nào các bit của biến P và Q khác nhau
Chẳng hạn như XOR của 4 [ở dạng nhị phân 0100] và 6 [ở dạng nhị phân 0110] là 1010
XOR của 2 [ở dạng nhị phân 0010] và 8 [ở dạng nhị phân 1000] là 1010
Thí dụ
đầu ra
Please enter value for P: 12 Please enter value for Q: 10 The Value of P after swapping: 10 The Value of Q after swapping: 12
Phương pháp 4. Bằng cách sử dụng các toán tử số học
Trong phương pháp này, chúng ta có thể hoán đổi giá trị của cả hai biến theo hai cách
- Sử dụng toán tử cộng và trừ
Thí dụ
đầu ra
Please enter value for P: 15 Please enter value for Q: 43 The Value of P after swapping: 43 The Value of Q after swapping: 15
- Sử dụng toán tử nhân và chia
Thí dụ
đầu ra
Please enter value for P: 23 Please enter value for Q: 14 The Value of P after swapping: 14.0 The Value of Q after swapping: 23.0
Phần kết luận
Trong hướng dẫn này, chúng ta đã thảo luận về các phương pháp khác nhau để hoán đổi giá trị của hai biến trong chương trình Python