Là chuỗi rỗng và không giống nhau trong python?

Trong Groovy, có một sự khác biệt nhỏ giữa một biến có giá trị là null và một biến có giá trị là chuỗi rỗng

Giá trị null thể hiện sự vắng mặt của bất kỳ đối tượng nào, trong khi chuỗi trống là một đối tượng loại String không có ký tự nào. Nếu bạn thử so sánh hai cái, chúng không giống nhau

Ví dụ: bất kỳ mã nào bên trong khối điều kiện sau sẽ không thực thi vì giá trị của varA [null] không bằng giá trị của varB [chuỗi rỗng]

def varA = null
def varB = '' /* The empty string */
if [varA == varB] {
  // Do something here when varA equals varB
}

Một vấn đề phổ biến khác liên quan đến sự khác biệt tinh tế này là việc cố gắng so sánh một biến với chuỗi rỗng không kiểm tra xem nó có phải là null hay không. Ví dụ: mã bên trong khối điều kiện sau sẽ thực thi [và gây ra lỗi

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
1 khi chạy] vì giá trị null của varA không bằng chuỗi trống

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}

Để kiểm tra xem một biến chuỗi không phải là null cũng không phải là rỗng hay không, bạn có thể viết rõ ràng cả hai điều kiện như thế này

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}

Tuy nhiên, Groovy cung cấp một cách đơn giản hơn. Vì cả null và chuỗi rỗng đều ước tính thành

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
4 khi được hiểu là một giá trị logic, nên bạn có thể sử dụng cách sau để thay thế

if [varA] {
  // Do something when varA has a non-null and non-empty value
}

Nếu varAnull, khối điều kiện sẽ bị bỏ qua. Điều tương tự cũng xảy ra nếu varA bằng chuỗi rỗng vì một trong hai điều kiện sẽ ước tính thành boolean

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
4. Cú pháp nhỏ gọn hơn này là cách tiếp cận được khuyến nghị

Thuật ngữ

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 trong python không giống như một chuỗi rỗng hoặc
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
0. Bản thân
def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 là toàn bộ kiểu dữ liệu được cung cấp bởi python và nó được sử dụng để xác định giá trị null

Tuy nhiên, một đối tượng của kiểu dữ liệu

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 có thể được biểu diễn dưới dạng một chuỗi rỗng trong python bằng cách chuyển đổi nó thành kiểu dữ liệu chuỗi. Hướng dẫn này trình bày các cách khác nhau có sẵn để in Không có gì dưới dạng một chuỗi rỗng trong Python

Làm cách nào để in Không có chuỗi rỗng trong Python?

Có một số cách tiếp cận mà chúng ta có thể thử in

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 dưới dạng một chuỗi rỗng trong Python. Chúng ta nên lưu ý rằng tất cả các cách tiếp cận này đều sử dụng quy trình chuyển đổi đối tượng từ kiểu dữ liệu
def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 thành chuỗi

Sử dụng toán tử Boolean
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
5

Toán tử Boolean rất tuyệt vời khi chuyển đổi một đối tượng thuộc loại

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 thành một chuỗi rỗng

Toán tử OR được sử dụng để so sánh hai giá trị và trả về giá trị bên trái nếu đó là

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
7, trong khi trong trường hợp của
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
8, nó trả về giá trị bên phải

Thuật ngữ Không ai có thể được phân loại thành một giá trị

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
8, nhờ đó toán tử OR thực hiện thành công nhiệm vụ hiện tại

Đoạn mã sau sử dụng toán tử Boolean

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
5 để in Không có dưới dạng chuỗi rỗng trong Python

Sử dụng toán tử Boolean OR

1

2

3

4

5

 

x = Không có

y = x hoặc ""

in[y]

 

đầu ra

Đầu ra của mã này sẽ là một chuỗi trống và do đó sẽ không hiển thị gì

Cả

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 và
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
03 đều được coi là giá trị
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
8 trong Python, sau đó giúp trả về giá trị dưới dạng chuỗi rỗng trong đoạn mã trên

Sử dụng hàm lambda cùng với toán tử Boolean OR

Một bổ sung đơn giản cho cách tiếp cận đã đề cập ở trên, cách này sử dụng hàm lambda cùng với toán tử Boolean

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
5 để in Không có dưới dạng một chuỗi trống trong Python

Đoạn mã sau sử dụng hàm lambda cùng với toán tử Boolean

if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
5 để in
def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 dưới dạng chuỗi rỗng trong Python

Sử dụng hàm lambda cùng với toán tử boolean OR

1

2

3

4

5

 

x = Không có

a = lambda x. x hoặc ""

in[a]

 

đầu ra

Tương tự như cách tiếp cận đã đề cập ở trên, đầu ra, trong trường hợp này, sẽ là một chuỗi rỗng

đọc thêm

Không có loại trong Python

Đọc thêm →

Cách kiểm tra null trong Python

Đọc thêm →

Sử dụng câu lệnh if

Câu lệnh if thường được sử dụng để đặt một số điều kiện nhất định và kiểm tra xem chúng có được đáp ứng trong mã không

Cách tiếp cận này rất rõ ràng vì nó chỉ hoạt động nếu biến thuộc loại

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 chứ không phải khi nó thuộc loại
if [varA != null && varA != ''] {
  // Do something when varA is neither null nor empty
}
8 khác

Câu lệnh if chỉ đơn giản là kiểm tra xem biến đã chỉ định có thuộc loại

def varA = null
if [varA != ''] {
  // set varB to the first character in varA
  def varB = varA.charAt[0]
}
9 hay không và nếu điều kiện đó đúng, nó sẽ gán lại biến làm cho nó trở thành một chuỗi rỗng

Đoạn mã sau sử dụng câu lệnh if để in Không có dưới dạng chuỗi rỗng trong Python

Sử dụng câu lệnh if

1

2

3

4

5

6

 

x = Không có

nếu x Không.

x = ""

in[x]

 

đầu ra

Tương tự như các cách tiếp cận khác trong bài viết, đầu ra thành công sẽ là một chuỗi rỗng

Sự kết luận

Hướng dẫn này trình bày và giải thích các cách tiếp cận khác nhau có thể được triển khai để xử lý tác vụ in Không có gì dưới dạng một chuỗi rỗng trong Python. Trong khi cách tiếp cận câu lệnh if rõ ràng hơn, hai cách tiếp cận còn lại nhanh và sử dụng toán tử Boolean đơn giản

Chuỗi rỗng có bằng Không?

Một chuỗi rỗng là một thể hiện của chuỗi có độ dài bằng 0, trong khi một chuỗi rỗng không có giá trị nào cả. Một chuỗi rỗng được biểu thị là "". Đó là một chuỗi ký tự gồm 0 ký tự. Một chuỗi null được đại diện bởi null

Chuỗi trống có đánh giá là Không có trong Python không?

Không sử dụng để kiểm tra xem một chuỗi có trống không trong Python . Empty strings in Python are considered to be falsy, meaning that they evaluate to False .

Chuỗi trống có nghĩa là gì trong Python?

một chuỗi gồm 0 ký tự , được viết dưới dạng '' , được gọi là "chuỗi trống" là hợp lệ. Độ dài của chuỗi rỗng là 0. Hàm len[] trong Python có ở khắp mọi nơi - nó được sử dụng để truy xuất độ dài của mọi loại dữ liệu, với chuỗi chỉ là một ví dụ đầu tiên.

Là chuỗi rỗng giống như?

Một chuỗi rỗng là một đối tượng Chuỗi có giá trị được gán, nhưng độ dài của nó bằng 0 . Một chuỗi rỗng không có giá trị gì cả.

Chủ Đề