In bảng không sử dụng vòng lặp trong Python

Python là một ngôn ngữ dễ học. Là người mới bắt đầu, bạn phải trang bị tốt các vòng lặp trong Python. Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu cách tạo bảng cửu chương trong python, hiểu cơ bản về vòng lặp. Bạn cũng sẽ học cách sử dụng các hàm lambda, để thay thế cho vòng lặp tại đây

Vậy hãy bắt đầu

Cách tạo bảng cửu chương trong Python?

Trước khi chuyển sang các cách khác nhau, chúng ta hãy xem tuyên bố vấn đề của chúng tôi

Báo cáo vấn đề. Tạo một bảng nhân cho bất kỳ số nào trong Python

Ví dụ

Giả sử bạn cần tạo và hiển thị bảng cửu chương cho một số (giả sử là 4) trong Python. Đầu ra mong muốn phải như thế này

 

5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50

hoặc

[4, 8, 12, 16, 20, 24, 28, 32, 36, 40]

Hãy tiếp tục để có được những giải pháp này

01) Sử dụng vòng lặp For

Vòng lặp for dùng để lặp lại một khối mã với số lần xác định. Do đó, vòng lặp for hoạt động trong phạm vi

Cú pháp cơ bản của vòng lặp for là

cho tham chiếu_biến_name trong (lặp lại hoặc phạm vi)
{ mã số }

Hãy tạo một bảng cửu chương cho một số bằng 'vòng lặp for' trong Python

# Program: Multiplication Table in Python

# number
num = 5

# let's take a syntax for our table - num x (1 - 10) = num*(1-10)
# Since we're taking the table to 10, hence we'll iterate it 10 times

print("The multiplication table of ", num)
for i in range(1, 11):
    print(f" {num} x {i} = {num*i}")

 

đầu ra

The multiplication table of  5
 5 x 1 = 5
 5 x 2 = 10
 5 x 3 = 15
 5 x 4 = 20
 5 x 5 = 25
 5 x 6 = 30
 5 x 7 = 35
 5 x 8 = 40
 5 x 9 = 45
 5 x 10 = 50

 

Hàm range(), như tên gợi ý, trả về một dãy số từ số này sang số khác. Cú pháp cơ bản của hàm range() là

phạm vi (ban đầu, cuối cùng, bước)

với các giá trị mặc định của bước đầu và bước lần lượt là 0 và 1

Ngoài ra, lưu ý rằng tôi đã sử dụng "11" trong hàm phạm vi () ở trên, vì phạm vi () trong Python không bao gồm số cuối cùng, tôi. e. nó cung cấp một chuỗi nhỏ hơn một chữ số cuối cùng

02) Sử dụng vòng lặp while

Vòng lặp while giúp chúng ta thực hiện một câu lệnh với điều kiện là đúng. Bạn cũng có thể sử dụng vòng lặp while để đếm chuỗi (về cơ bản là vòng lặp for có nhiều dòng mã hơn). Hãy thử nó ra

# Program: Multiplication Table in Python

# number
num = 5

# let's take a syntax for our table - num x (1 - 10) = num*(1-10)
# Since we're taking the table to 10, hence we'll iterate it 10 times

print("The multiplication table of ", num)
# initialize i for range
count = 1
while count <= 10:
    print(f" {num} x {count} = {num*count}")
    # increment the counter variable
    count += 1

 

đầu ra

The multiplication table of  5
 5 x 1 = 5
 5 x 2 = 10
 5 x 3 = 15
 5 x 4 = 20
 5 x 5 = 25
 5 x 6 = 30
 5 x 7 = 35
 5 x 8 = 40
 5 x 9 = 45
 5 x 10 = 50

 

Ở đây, bạn phải khởi tạo một biến để giữ số đếm (giống như hàm range() trong vòng lặp for)

Trước khi tiếp tục, có một vấn đề mà chúng tôi có thể đã bỏ qua trong quá trình này. Đó là "tạo bảng cửu chương cho một số bất kỳ". Cho đến nay, chúng tôi đã tự khởi tạo số. Nhưng để lấy đầu vào của người dùng cho việc này, chúng ta cần sử dụng hàm input() trong Python

Sử dụng hàm input() trong Python. Python cung cấp một hàm input() để cung cấp phương tiện lấy đầu vào từ người dùng. Hàm này không yêu cầu chỉ định bất kỳ loại dữ liệu nào (và nó thường lưu trữ dữ liệu ở định dạng chuỗi)

Để tạo bảng cửu chương cho số 'bất kỳ' trong Python, bạn có thể sử dụng hàm nhập để lấy số làm đầu vào từ người dùng. Ngoài ra, lưu ý rằng bạn cần nhập trường hợp đầu vào. Như đã đề cập, nó lưu trữ đầu vào dưới dạng một chuỗi, do đó, cần phải chuyển đổi số thành kiểu dữ liệu mong muốn của chúng tôi (ở đây, int)

Ví dụ

# Program: Using input() function in Python

# take input from the user
# used int() to typecast the input from string to integer
num = int(input("Enter a number: "))

print(num, " data type: ", type(num))

 

đầu ra

Enter a number: 4
4  data type:  <class 'int'>

Bây giờ bạn có thể lấy bất kỳ số nào từ người dùng, hãy quay lại bảng cửu chương cho bất kỳ số nào trong Python

 

03) Sử dụng hiểu danh sách

Khả năng hiểu danh sách giúp thu nhỏ mã của bạn chỉ còn một dòng. Hãy xem cách tạo bảng cửu chương cho một số trong Python chỉ bằng một dòng mã

# Program: Multiplication Table in Python

# take input from the user
# used int() to typecast the input from string to integer
num = int(input("Enter a number: "))

# using list comprehension
table = [num * i for i in range(1, 11)]

print(table)

 

đầu ra

Enter a number: 5
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

 

Danh sách chứa tất cả các bội số của số đã cho

Bây giờ, bạn đã thấy các phương pháp cơ bản để tạo bảng cửu chương, hãy cùng xem bài toán này mà không cần sử dụng bất kỳ vòng lặp nào

Đúng rồi. Không có vòng lặp. Mặc dù vấn đề này có vẻ như là một nhiệm vụ dễ dàng với các vòng lặp, nhưng bạn sẽ thường thấy vấn đề này trong các cuộc phỏng vấn. Nhưng với một bước ngoặt

Vì vậy, bây giờ chúng ta sẽ tìm hiểu cách tạo bảng cửu chương trong python mà không cần sử dụng bất kỳ vòng lặp nào. Bạn phải tự hỏi nếu điều đó thậm chí có thể. nhu cầu này là gì?

Vì vậy, mặc dù đây là một nhiệm vụ dễ dàng, nhưng nó thực sự được sử dụng để kiểm tra mức độ hiểu biết của bạn về 'hàm Lambda'. Bạn thường được yêu cầu phải suy nghĩ sáng tạo và vấn đề này kiểm tra khả năng hiểu ngôn ngữ của bạn. Vì vậy, chúng ta hãy nhìn vào nó

04) Sử dụng bản đồ và chức năng Lambda

Các hàm là thành phần của một khối mã, có thể được gọi bất cứ khi nào được yêu cầu trong chương trình. Những điều này là cần thiết để giảm sự lặp lại mã. Các hàm được khai báo bằng cách sử dụng từ khóa 'def' trong Python, theo sau là tên và đối số của chúng (nếu có). Chẳng hạn như

def functionName(đối số). {mã số}

trong khi các hàm Lambda thường được sử dụng theo các hàm bậc cao hơn nhận hoặc trả về một hoặc nhiều hàm. Các hàm bậc cao đề cập đến các hàm như map() hoặc filter(). Ngoài ra, họ chấp nhận bất kỳ số lượng đầu vào nào

Lưu ý rằng các hàm lambda không yêu cầu bất kỳ nhãn nào (như tên hàm). Ngoài ra, theo cú pháp, các hàm lambda được giới hạn trong một câu lệnh. Bạn có thể khai báo một hàm lambda như

biến = lambda {đầu vào}. {mã số}

Hãy lấy một ví dụ để hiểu rõ hơn

________số 8_______

 

đầu ra

20

 

Lưu ý một lần nữa rằng các hàm lambda là một lớp lót. Dấu hai chấm - '. ' là dấu phân cách giữa các đầu vào (được biểu thị bằng x, y ) và thao tác (x*y)

Hãy chuyển sang tạo bảng cửu chương cho bất kỳ số nào trong Python bằng hàm lambda

The multiplication table of  5
 5 x 1 = 5
 5 x 2 = 10
 5 x 3 = 15
 5 x 4 = 20
 5 x 5 = 25
 5 x 6 = 30
 5 x 7 = 35
 5 x 8 = 40
 5 x 9 = 45
 5 x 10 = 50
0

 

đầu ra

The multiplication table of  5
 5 x 1 = 5
 5 x 2 = 10
 5 x 3 = 15
 5 x 4 = 20
 5 x 5 = 25
 5 x 6 = 30
 5 x 7 = 35
 5 x 8 = 40
 5 x 9 = 45
 5 x 10 = 50
1

 

Khó hiểu?

Hãy giải mã để hiểu rõ hơn

  1. Tôi đã chuyển đổi số thành một danh sách (có thể lặp lại)
  2. Sử dụng hàm map(). Hàm map() cho phép bạn xử lý và chuyển đổi tất cả các mục trong một lần lặp mà không cần sử dụng vòng lặp một cách rõ ràng

Bây giờ, hãy làm sáng tỏ chức năng lambda

  1. lambda -> từ khóa
  2. x, y -> tham số đầu vào
  3. -> dấu phân cách
  4. x*y -> thao tác được thực hiện
  5. list(range(1,11)) -> để lấy phạm vi từ 1 đến 10
  6. num*10 -> Điều này được thực hiện để lặp lại số. Vì chúng tôi cần tạo bảng cho đến 10, nên chúng tôi sẽ cần số 10 lần (do đó sẽ thêm số vào danh sách 10 lần)

Dễ dàng, phải không?

Hàm lambda thoạt nghe có vẻ quá sức nhưng sẽ rất dễ dàng khi bạn được trang bị đầy đủ về nó

Phần kết luận

Ngay cả một vấn đề cơ bản cũng có thể có các giải pháp phức tạp. Người phỏng vấn có thể thường đưa ra những câu hỏi như vậy để kiểm tra kiến ​​thức và hiểu biết của bạn về ngôn ngữ lập trình.  

Bạn sẽ tìm thấy nhiều phương pháp để lấy bảng cửu chương cho bất kỳ số nào trong Python, với các định dạng hoặc đầu ra khác nhau. Bạn cũng có thể tìm ra phương pháp của riêng mình để giải quyết vấn đề. Cuối cùng, cách tiếp cận vấn đề của bạn phụ thuộc vào cách thực hành và khả năng khám phá ngôn ngữ của bạn. mã hóa hạnh phúc

Làm cách nào tôi có thể in bảng bằng Python?

Có một số cách có thể được sử dụng để in bảng trong python, cụ thể là. .
Sử dụng hàm format() để in chính tả và danh sách
Sử dụng hàm tabulate() để in chính tả và danh sách
bảng văn bản
bàn đẹp
KháBảng

Làm cách nào để in từ 1 đến 100 mà không cần sử dụng bất kỳ vòng lặp điều kiện nào?

In các số từ 1 đến 100 bằng câu lệnh Goto .
khai báo biến i có giá trị 0
khai báo câu lệnh nhảy có tên là bắt đầu, làm tăng giá trị của i lên 1 và in nó
viết câu lệnh if với điều kiện i < 100, bên trong gọi câu lệnh nhảy bắt đầu

Sự thay thế tốt nhất cho vòng lặp Python là gì?

Một cách nhanh hơn để lặp lại trong Python là sử dụng các hàm tích hợp sẵn . Trong ví dụ của chúng tôi, chúng tôi có thể thay thế vòng lặp for bằng hàm tổng. Hàm này sẽ tính tổng các giá trị bên trong dãy số.