Computer >> Máy Tính >  >> Lập trình >> Python

Cách sử dụng dấu hoa thị trong Python

Ngôn ngữ lập trình Python sử dụng cả * và ** trên các ngữ cảnh khác nhau. Trong bài viết này, chúng ta sẽ xem cách sử dụng hai thứ này như thế nào và các trường hợp hữu ích tương ứng là gì.

Với tư cách là nhà điều hành Infix

Khi * được sử dụng làm toán tử infix, về cơ bản, nó cung cấp tích số toán học của các con số. TRONG ví dụ dưới đây, chúng tôi lấy số nguyên. Số thực và số phức để nhân và nhận kết quả.

Ví dụ

# Integers
x = 20
y = 10
z = x * y
print(z,"\n")

# Floats
x1 = 2.5
y1 = 5.1
z1 = x1 * y1
print(z1,"\n")

# Complex Numbers
x2 = 4 + 5j
y2 = 5 + 4j
z2 = x2 * y2
print(z2,"\n")

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

200
12.75
41j

Chúng tôi cũng có thể sử dụng nó làm toán tử infix để mở rộng chuỗi.

Ví dụ

str = "Point-"
print(str * 4,"\n")
List = [4, 5, 6]
print(List * 3,"\n")
Tuple = (9, 8, 7)
print(Tuple * 2)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Point-Point-Point-Point-
[4, 5, 6, 4, 5, 6, 4, 5, 6]
(9, 8, 7, 9, 8, 7)

Với tư cách là nhà khai thác tiền tố

Chúng ta có thể sử dụng một dấu hoa thị làm tiền tố. Các ví dụ dưới đây mô tả các ví dụ khác nhau về cách chúng tôi có thể sử dụng nó làm tiền tố.

Mở rộng một tệp có thể lặp lại

Một danh sách có thể lặp lại như danh sách hoặc tuple có thể được mở rộng bằng cách chỉ thêm dấu hoa thị vào trước tên của nó.

Ví dụ

week_days =['Mon','Tue','Wed','Thu','Fri']
print(week_days)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Mon Tue Wed Thu Fri

Lấy số lượng đối số thay đổi

Chúng ta có thể cung cấp số lượng đối số thay đổi cho một hàm bằng cách sử dụng một biểu tượng dấu hoa thị. Nó được hiển thị trong chương trình dưới đây.

Ví dụ

def many_sums(*args):
   res = 0
   # Iterating over the Python args tuple
   for x in args:
   res = res + x
   return res
print(many_sums(1, 2))
print(many_sums(11, 21, 30))
print(many_sums(5.5,0))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

3
62
5.5

Sử dụng **

Dấu hoa thị kép được sử dụng cho các đối số dựa trên từ khóa. Ở đây, đối số được chuyển vào dưới dạng từ điển chứ không phải dưới dạng các giá trị riêng lẻ.

Ví dụ

def join_keys(**kwargs):
   result = ""
   # Iterating over kwargs dictionary keys
   for arg in kwargs.keys():
   result += arg
   return result
def join_values(**kwargs):
   result = ""
   # Iterating over kwargs dictionary values
   for arg in kwargs.values():
   result += arg
   return result
print(join_keys(day1="Mon-", day2="Tue-", day3="Wed-", day4="Thu-"))
print(join_values(day1="Mon-", day2="Tue-", day3="Wed-", day4="Thu-"))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

day1day2day3day4
Mon-Tue-Wed-Thu-