Hướng dẫn can strings be in lists python? - chuỗi có thể nằm trong danh sách python không?

Chúng ta có thể sử dụng toán tử Python

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
0 để kiểm tra xem một chuỗi có có trong danh sách hay không. Ngoài ra còn có một toán tử
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
1 để kiểm tra xem một chuỗi không có trong danh sách.

Show
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']

# string in the list
if 'A' in l1:
    print('A is present in the list')

# string not in the list
if 'X' not in l1:
    print('X is not present in the list')

Output:

A is present in the list
X is not present in the list

Đọc được đề xuất: Python F-Strings, hãy xem xét một ví dụ khác, nơi chúng tôi sẽ yêu cầu người dùng nhập chuỗi để kiểm tra danh sách.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')

Output:

Please enter a character A-Z:
A
A is present in the list

Python Tìm chuỗi trong danh sách bằng cách sử dụng Count ()

Chúng ta cũng có thể sử dụng hàm Count () để có được số lần xuất hiện của một chuỗi trong danh sách. Nếu đầu ra của nó là 0, thì điều đó có nghĩa là chuỗi không có trong danh sách.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')

Tìm tất cả các chỉ mục của một chuỗi trong danh sách

Không có chức năng tích hợp để có được danh sách tất cả các chỉ mục của một chuỗi trong danh sách. Dưới đây là một chương trình đơn giản để có được danh sách tất cả các chỉ mục trong đó chuỗi có trong danh sách.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')

Đầu ra:

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
2

Bạn có thể kiểm tra toàn bộ tập lệnh Python và nhiều ví dụ về Python từ Kho lưu trữ GitHub của chúng tôi.

3.1. Các loại dữ liệu trình tựSequence data types¶

Chương trước, chúng tôi đã giới thiệu các loại tích hợp Python,

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
3,
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
4 và
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
5, và chúng tôi tình cờ thấy
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
6.

Số nguyên và phao là các loại số, có nghĩa là chúng giữ số. Chúng ta có thể sử dụng các toán tử số mà chúng ta đã thấy chương cuối cùng với chúng để tạo thành các biểu thức số. Trình thông dịch Python sau đó có thể đánh giá các biểu thức này để tạo ra các giá trị số, làm cho Python trở thành một máy tính rất mạnh.numeric types, which means they hold numbers. We can use the numeric operators we saw last chapter with them to form numeric expressions. The Python interpreter can then evaluate these expressions to produce numeric values, making Python a very powerful calculator.

Chuỗi, danh sách và bộ dữ liệu đều là các loại trình tự, vì vậy được gọi là vì chúng hoạt động như một chuỗi - một bộ sưu tập các đối tượng được đặt hàng.sequence types, so called because they behave like a sequence - an ordered collection of objects.

Các loại squence khác nhau về mặt chất lượng với các loại số vì chúng là loại dữ liệu hỗn hợp - có nghĩa là chúng được tạo thành từ các mảnh nhỏ hơn. Trong trường hợp chuỗi, chúng được tạo thành từ các chuỗi nhỏ hơn, mỗi chuỗi chứa một ký tự. Ngoài ra còn có chuỗi trống, không chứa ký tự nào cả.compound data types - meaning they are made up of smaller pieces. In the case of strings, they’re made up of smaller strings, each containing one character. There is also the empty string, containing no characters at all.

Trong trường hợp danh sách hoặc bộ dữ liệu, chúng được tạo thành từ các phần tử, là giá trị của bất kỳ kiểu dữ liệu Python nào, bao gồm các danh sách và bộ dữ liệu khác.elements, which are values of any Python datatype, including other lists and tuples.

Danh sách được đặt trong ngoặc vuông (

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7 và
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) và các bộ dữ liệu trong ngoặc đơn (
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
9 và
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
0).
are enclosed in square brackets (
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7 and
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) and tuples in parentheses (
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
9 and
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
0).

Một danh sách không chứa các phần tử được gọi là một danh sách trống và một tuple không có phần tử là một tuple trống.

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]

Ví dụ đầu tiên là danh sách năm số nguyên, và tiếp theo là danh sách ba chuỗi. Thứ ba là một tuple chứa bốn số nguyên, sau đó là một tuple chứa bốn chuỗi. Cuối cùng là một danh sách chứa ba bộ dữ liệu, mỗi bộ chứa một cặp chuỗi.

Tùy thuộc vào những gì chúng tôi đang làm, chúng tôi có thể muốn coi một loại dữ liệu hỗn hợp là một điều duy nhất hoặc chúng tôi có thể muốn truy cập các phần của nó. Sự mơ hồ này là hữu ích.

Ghi chú

Có thể bỏ dấu ngoặc đơn khi chỉ định một tuple và chỉ sử dụng danh sách các giá trị bị phân tách bằng dấu phẩy:

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)

Ngoài ra, bắt buộc phải bao gồm một dấu phẩy khi chỉ định một tuple chỉ có một yếu tố:

>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>

Ngoại trừ trường hợp của tuple trống, nó thực sự là dấu phẩy, không phải dấu ngoặc đơn, nói với Python rằng đó là một tuple.

3.2. Làm việc với các phần của chuỗiWorking with the parts of a sequence¶

Các loại trình tự chia sẻ một tập hợp các hoạt động chung.

3.2.1. Lập chỉ mụcIndexing¶

Toán tử lập chỉ mục (

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) chọn một phần tử duy nhất từ ​​một chuỗi. Biểu thức bên trong ngoặc được gọi là chỉ mục và phải là một giá trị số nguyên. Chỉ mục chỉ ra phần tử nào để chọn, do đó tên của nó.indexing operator (
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) selects a single element from a sequence. The expression inside brackets is called the index, and must be an integer value. The index indicates which element to select, hence its name.

>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')

Biểu thức

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
3 chọn ký tự với INDEX
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
4 từ
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
5 và tạo ra một chuỗi mới chỉ chứa một ký tự này, bạn có thể ngạc nhiên khi thấy là
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
6.

Bạn có thể dự kiến ​​sẽ thấy

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
7, nhưng các nhà khoa học máy tính thường bắt đầu đếm từ số không, không phải một. Hãy nghĩ về chỉ số là các số trên một thước đo đo lường số lượng yếu tố bạn đã chuyển sang chuỗi từ đầu. Cả người cai trị và chỉ số bắt đầu tại
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
8.

3.2.2. Chiều dài¶Length¶

Chương trước bạn đã thấy hàm

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
9 được sử dụng để lấy số lượng ký tự trong một chuỗi:

Với danh sách và bộ dữ liệu,

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
9 trả về số lượng phần tử trong chuỗi:

A is present in the list
X is not present in the list
0

3.2.3. Truy cập các yếu tố ở cuối chuỗiAccessing elements at the end of a sequence¶

Người ta thường thấy trong chương trình máy tính cần truy cập các yếu tố ở cuối chuỗi. Bây giờ bạn đã thấy chức năng

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
9, bạn có thể muốn thử một cái gì đó như thế này:

A is present in the list
X is not present in the list
1

Điều đó đã giành được công việc. Nó gây ra lỗi thời gian chạy

>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
2. Lý do là
>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
3 trả về số lượng các phần tử trong danh sách, 16, nhưng không có phần tử nào ở vị trí chỉ mục 16 trong
>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
4.

Vì chúng tôi bắt đầu đếm ở 0, mười sáu chỉ số được đánh số từ 0 đến 15. Để có được phần tử cuối cùng, chúng tôi phải trừ 1 từ độ dài:

A is present in the list
X is not present in the list
2

Đây là một mô hình phổ biến như vậy mà Python cung cấp một ký hiệu tay ngắn cho nó, lập chỉ mục âm, đếm ngược từ cuối chuỗi.negative indexing, which counts backward from the end of the sequence.

Biểu thức

>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
5 mang lại phần tử cuối cùng,
>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
6 mang lại thứ hai đến cuối cùng, v.v.

A is present in the list
X is not present in the list
3

3.2.4. Traversal và >>> singleton = (2,) >>> type(singleton) <class 'tuple'> >>> not_tuple = (2) >>> type(not_tuple) <class 'int'> >>> empty_tuple = () >>> type(empty_tuple) <class 'tuple'> 7 Loop¶Traversal and the >>> singleton = (2,) >>> type(singleton) <class 'tuple'> >>> not_tuple = (2) >>> type(not_tuple) <class 'int'> >>> empty_tuple = () >>> type(empty_tuple) <class 'tuple'> 7 loop¶

Rất nhiều tính toán liên quan đến việc xử lý một chuỗi một yếu tố tại một thời điểm. Mẫu phổ biến nhất là bắt đầu ở đầu, lần lượt chọn từng phần tử, làm điều gì đó với nó và tiếp tục cho đến khi kết thúc. Mô hình xử lý này được gọi là một đường truyền.traversal.

Vòng lặp Python từ ____ ____87 làm cho Traversal dễ dàng thể hiện:

A is present in the list
X is not present in the list
4

Ghi chú

Chúng tôi sẽ thảo luận về việc lặp lại chi tiết hơn trong chương tiếp theo. Bây giờ, chỉ cần lưu ý rằng dấu hai chấm (:) ở cuối dòng đầu tiên và thụt vào dòng thứ hai đều được yêu cầu để câu lệnh này được chính xác về mặt cú pháp.

3.3. ________ 89¶>>> singleton = (2,) >>> type(singleton) <class 'tuple'> >>> not_tuple = (2) >>> type(not_tuple) <class 'int'> >>> empty_tuple = () >>> type(empty_tuple) <class 'tuple'> 9¶

Khi vòng lặp

>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
7 tiêu chuẩn đi qua một chuỗi, nó chỉ định từng giá trị theo trình tự cho biến vòng lặp theo thứ tự nó xảy ra trong chuỗi. Đôi khi nó hữu ích để có cả giá trị và chỉ số của từng phần tử. Hàm
>>> singleton = (2,)
>>> type(singleton)
<class 'tuple'>
>>> not_tuple = (2)
>>> type(not_tuple)
<class 'int'>
>>> empty_tuple = ()
>>> type(empty_tuple)
<class 'tuple'>
9 cung cấp cho chúng ta điều này:

A is present in the list
X is not present in the list
5

3.3.1. Lát cắtSlices¶

Một phần sau của một chuỗi được gọi là một lát cắt và hoạt động trích xuất một phần sau được gọi là cắt. Giống như với việc lập chỉ mục, chúng tôi sử dụng dấu ngoặc vuông (

[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) làm toán tử lát cắt, nhưng thay vì một giá trị số nguyên bên trong, chúng tôi có hai, được phân tách bởi một đại tràng (
>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
4):slice and the operation that extracts a subsequence is called slicing. Like with indexing, we use square brackets (
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
7
[10, 20, 30, 40, 50]
["spam", "bungee", "swallow"]
(2, 4, 6, 8)
("two", "four", "six", "eight")
[("cheese", "queso"), ("red", "rojo"), ("school", "escuela")]
8) as the slice operator, but instead of one integer value inside we have two, seperated by a colon (
>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
4):

A is present in the list
X is not present in the list
6

Nhà điều hành

>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
5 trả về một phần của chuỗi từ phần tử N hèth cho phần tử M hèth, bao gồm cả phần đầu tiên nhưng không bao gồm phần cuối cùng. Hành vi này là phản trực giác; Sẽ có ý nghĩa hơn nếu bạn tưởng tượng các chỉ số chỉ giữa các ký tự, như trong sơ đồ sau:

Hướng dẫn can strings be in lists python? - chuỗi có thể nằm trong danh sách python không?

Nếu bạn bỏ qua chỉ mục đầu tiên (trước dấu hai chấm), lát cắt bắt đầu ở đầu chuỗi. Nếu bạn bỏ qua chỉ mục thứ hai, lát cắt đi đến cuối chuỗi. Do đó:

A is present in the list
X is not present in the list
7

Bạn nghĩ

>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
6 có nghĩa là gì? Còn
>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
7 thì sao?

Các chỉ số tiêu cực cũng được cho phép, vì vậy

A is present in the list
X is not present in the list
8

Mẹo

Phát triển sự hiểu biết vững chắc về cách cắt lát hoạt động là quan trọng. Tiếp tục tạo các thử nghiệm trên mạng của riêng bạn với các chuỗi và lát cắt cho đến khi bạn có thể liên tục dự đoán kết quả của một hoạt động cắt trước khi bạn chạy nó.

Khi bạn cắt một chuỗi, chuỗi kết quả luôn có cùng loại với trình tự mà nó được bắt nguồn. Điều này nói chung không đúng với việc lập chỉ mục, ngoại trừ trong trường hợp chuỗi.

A is present in the list
X is not present in the list
9

Mặc dù các yếu tố của một danh sách (hoặc tuple) có thể thuộc bất kỳ loại nào, bất kể bạn cắt nó như thế nào, một lát của danh sách là một danh sách.

3.3.2. Nhà điều hành >>> fruit = "banana" >>> fruit[1] 'a' >>> fruits = ['apples', 'cherries', 'pears'] >>> fruits[0] 'apples' >>> prices = (3.99, 6.00, 10.00, 5.25) >>> prices[3] 5.25 >>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')] >>> pairs[2] ('school', 'escuela') 8The >>> fruit = "banana" >>> fruit[1] 'a' >>> fruits = ['apples', 'cherries', 'pears'] >>> fruits[0] 'apples' >>> prices = (3.99, 6.00, 10.00, 5.25) >>> prices[3] 5.25 >>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')] >>> pairs[2] ('school', 'escuela') 8 operator¶

Toán tử

>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
8 trả về xem một phần tử nhất định có chứa trong danh sách hoặc tuple:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
0

>>> fruit = "banana"
>>> fruit[1]
'a'
>>> fruits = ['apples', 'cherries', 'pears']
>>> fruits[0]
'apples'
>>> prices = (3.99, 6.00, 10.00, 5.25)
>>> prices[3]
5.25
>>> pairs = [('cheese', 'queso'), ('red', 'rojo'), ('school', 'escuela')]
>>> pairs[2]
('school', 'escuela')
8 hoạt động hơi khác với chuỗi. Nó đánh giá đến
A is present in the list
X is not present in the list
01 nếu một chuỗi là một chuỗi con của một chuỗi khác:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
1

Lưu ý rằng một chuỗi là một chuỗi con của chính nó và chuỗi trống là một chuỗi con của bất kỳ chuỗi nào khác. (Cũng lưu ý rằng các lập trình viên máy tính thích nghĩ về các trường hợp cạnh này khá cẩn thận!)

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
2

3.4. Đối tượng và Phương phápObjects and methods¶

Chuỗi, danh sách và bộ dữ liệu là đối tượng, điều đó có nghĩa là chúng không chỉ giữ các giá trị, mà còn có các hành vi tích hợp được gọi là phương thức, hoạt động trên các giá trị trong đối tượng.

Hãy cùng xem xét một số phương thức chuỗi trong hành động để xem cách thức hoạt động của nó.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
3

Bây giờ, hãy để học cách mô tả những gì chúng ta vừa thấy. Mỗi chuỗi trong các ví dụ trên được theo sau bởi một toán tử chấm, tên phương thức và danh sách tham số, có thể trống.dot operator, a method name, and a parameter list, which may be empty.

Trong ví dụ đầu tiên, chuỗi

A is present in the list
X is not present in the list
02 được theo sau bởi toán tử DOT và sau đó là phương thức
A is present in the list
X is not present in the list
03, có danh sách tham số trống. Chúng tôi nói rằng phương thức ____ ____103 được gọi trên chuỗi,
A is present in the list
X is not present in the list
02. Gọi phương thức gây ra một hành động diễn ra bằng cách sử dụng giá trị mà phương thức được gọi. Hành động tạo ra kết quả, trong trường hợp này là giá trị chuỗi
A is present in the list
X is not present in the list
06. Chúng tôi nói rằng phương thức
A is present in the list
X is not present in the list
03 trả về chuỗi
A is present in the list
X is not present in the list
06 khi nó được gọi trên (hoặc gọi) chuỗi
A is present in the list
X is not present in the list
02.invoked on the string,
A is present in the list
X is not present in the list
02. Invoking the method causes an action to take place using the value on which the method is invoked. The action produces a result, in this case the string value
A is present in the list
X is not present in the list
06. We say that the
A is present in the list
X is not present in the list
03 method returns the string
A is present in the list
X is not present in the list
06 when it is invoked on (or called on) the string
A is present in the list
X is not present in the list
02.

Trong ví dụ thứ tư, phương thức

A is present in the list
X is not present in the list
10 (một lần nữa với danh sách tham số trống) được gọi trên chuỗi
A is present in the list
X is not present in the list
11. Vì mỗi ký tự trong chuỗi đại diện cho một chữ số, phương thức
A is present in the list
X is not present in the list
10 trả về giá trị boolean
A is present in the list
X is not present in the list
01. Gọi
A is present in the list
X is not present in the list
10 trên
A is present in the list
X is not present in the list
15 sản xuất
A is present in the list
X is not present in the list
16.

A is present in the list
X is not present in the list
17 loại bỏ khoảng trắng dẫn đầu và dấu vết.

3.5. Hàm A is present in the list X is not present in the list 18 và tài liệuThe A is present in the list X is not present in the list 18 function and docstrings¶

Phần trước đã giới thiệu một số phương thức của các đối tượng chuỗi. Để tìm tất cả các phương pháp mà các chuỗi có, chúng ta có thể sử dụng chức năng

A is present in the list
X is not present in the list
19 tích hợp của Python::

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
4

Chúng tôi sẽ hoãn việc nói về những người bắt đầu bằng cách nhấn mạnh gấp đôi (

A is present in the list
X is not present in the list
20) cho đến sau này. Bạn có thể tìm hiểu thêm về từng phương pháp này bằng cách in ra các tài liệu của họ. Để tìm hiểu phương pháp
A is present in the list
X is not present in the list
21 làm gì, ví dụ, chúng tôi làm điều này:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
5

Sử dụng thông tin này, chúng tôi có thể thử sử dụng phương thức thay thế để biến đổi mà chúng tôi biết nó hoạt động như thế nào.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
6

Ví dụ đầu tiên thay thế tất cả các tình trạng của

A is present in the list
X is not present in the list
22 bằng
A is present in the list
X is not present in the list
23. Thứ hai thay thế ký tự đơn
A is present in the list
X is not present in the list
24 bằng hai ký tự
A is present in the list
X is not present in the list
25. Ví dụ thứ ba thay thế hai lần xuất hiện đầu tiên của
A is present in the list
X is not present in the list
26 bằng chuỗi trống.

3.6. A is present in the list X is not present in the list 27 và A is present in the list X is not present in the list 28 PHƯƠNG PHÁPA is present in the list X is not present in the list 27 and A is present in the list X is not present in the list 28 methods¶

Có hai phương pháp phổ biến cho cả ba loại chuỗi:

A is present in the list
X is not present in the list
27 và
A is present in the list
X is not present in the list
28. Hãy cùng nhìn vào các tài liệu của họ để xem những gì họ làm.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
7

Chúng tôi sẽ khám phá các chức năng này trong các bài tập.

3.7. Danh sách là có thể thay đổiLists are mutable¶

Không giống như các chuỗi và bộ dữ liệu, là các đối tượng bất biến, danh sách có thể thay đổi, điều đó có nghĩa là chúng ta có thể thay đổi các yếu tố của chúng. Sử dụng toán tử khung ở phía bên trái của bài tập, chúng tôi có thể cập nhật một trong các yếu tố:mutable, which means we can change their elements. Using the bracket operator on the left side of an assignment, we can update one of the elements:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
8

Toán tử khung được áp dụng cho một danh sách có thể xuất hiện ở bất cứ đâu trong một biểu thức. Khi nó xuất hiện ở phía bên trái của một bài tập, nó thay đổi một trong các yếu tố trong danh sách, do đó, phần tử đầu tiên của

>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
5 đã được thay đổi từ
A is present in the list
X is not present in the list
32 thành
A is present in the list
X is not present in the list
33 và phần cuối cùng từ
A is present in the list
X is not present in the list
34 thành
A is present in the list
X is not present in the list
35. Một nhiệm vụ cho một yếu tố của một danh sách được gọi là gán mục. Bài tập vật phẩm không hoạt động cho các chuỗi:item assignment. Item assignment does not work for strings:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
9

Nhưng nó làm cho danh sách:

Please enter a character A-Z:
A
A is present in the list
0

Với toán tử lát cắt, chúng tôi có thể cập nhật một số yếu tố cùng một lúc:

Please enter a character A-Z:
A
A is present in the list
1

Chúng tôi cũng có thể xóa các phần tử khỏi danh sách bằng cách gán danh sách trống cho họ:

Please enter a character A-Z:
A
A is present in the list
2

Và chúng ta có thể thêm các phần tử vào danh sách bằng cách ép chúng vào một lát trống tại vị trí mong muốn:

Please enter a character A-Z:
A
A is present in the list
3

3.8. Danh sách xóaList deletion¶

Sử dụng các lát để xóa các yếu tố danh sách có thể khó xử, và do đó dễ bị lỗi. Python cung cấp một giải pháp thay thế dễ đọc hơn.

A is present in the list
X is not present in the list
36 Xóa một phần tử khỏi danh sách:

Please enter a character A-Z:
A
A is present in the list
4

Như bạn có thể mong đợi,

A is present in the list
X is not present in the list
36 xử lý các chỉ số âm và gây ra lỗi thời gian chạy nếu chỉ mục nằm ngoài phạm vi.

Bạn có thể sử dụng một lát làm chỉ mục cho

A is present in the list
X is not present in the list
36:

Please enter a character A-Z:
A
A is present in the list
5

Như thường lệ, các lát cắt chọn tất cả các yếu tố lên đến, nhưng không bao gồm chỉ số thứ hai.

3.9. Phương pháp liệt kêList methods¶

Ngoài

A is present in the list
X is not present in the list
27 và
A is present in the list
X is not present in the list
28, danh sách có một số phương pháp hữu ích. Vì các danh sách có thể thay đổi, các phương thức này sửa đổi danh sách mà chúng được gọi, thay vì trả lại một danh sách mới.

Please enter a character A-Z:
A
A is present in the list
6

Phương pháp

A is present in the list
X is not present in the list
41 đặc biệt hữu ích, vì nó giúp dễ dàng sử dụng Python để sắp xếp dữ liệu mà bạn đã đưa vào danh sách.

3.10. Tên và các giá trị có thể thay đổiNames and mutable values¶

Nếu chúng tôi thực hiện các câu lệnh gán này,

Please enter a character A-Z:
A
A is present in the list
7

Chúng tôi biết rằng các tên

A is present in the list
X is not present in the list
42 và
A is present in the list
X is not present in the list
43 sẽ đề cập đến một danh sách với các số
>>> thing = 2, 4, 6, 8
>>> type(thing)
<class 'tuple'>
>>> thing
(2, 4, 6, 8)
4,
A is present in the list
X is not present in the list
45 và
A is present in the list
X is not present in the list
46. Nhưng chúng tôi không biết liệu họ có chỉ vào cùng một danh sách hay không.

Có hai trạng thái có thể:

Hướng dẫn can strings be in lists python? - chuỗi có thể nằm trong danh sách python không?

hoặc

Hướng dẫn can strings be in lists python? - chuỗi có thể nằm trong danh sách python không?

Trong một trường hợp,

A is present in the list
X is not present in the list
42 và
A is present in the list
X is not present in the list
43 đề cập đến hai điều khác nhau có cùng giá trị. Trong trường hợp thứ hai, họ đề cập đến cùng một đối tượng.

Chúng ta có thể kiểm tra xem hai tên có cùng giá trị bằng cách sử dụng

A is present in the list
X is not present in the list
49:

Chúng ta có thể kiểm tra xem hai tên có đề cập đến cùng một đối tượng bằng toán tử IS hay không:

Điều này cho chúng ta biết rằng cả

A is present in the list
X is not present in the list
42 và
A is present in the list
X is not present in the list
43 không đề cập đến cùng một đối tượng và đó là sơ đồ đầu tiên trong hai sơ đồ trạng thái mô tả mối quan hệ.

3.11. Răng cưa¶Aliasing¶

Vì các biến đề cập đến các đối tượng, nếu chúng ta gán một biến cho một biến khác, cả hai biến tham chiếu đến cùng một đối tượng:

Please enter a character A-Z:
A
A is present in the list
8

Trong trường hợp này, đây là thứ hai trong hai sơ đồ trạng thái mô tả mối quan hệ giữa các biến.

Bởi vì cùng một danh sách có hai tên khác nhau,

A is present in the list
X is not present in the list
42 và
A is present in the list
X is not present in the list
43, chúng tôi nói rằng nó là bí danh. Vì danh sách là có thể thay đổi, các thay đổi được thực hiện với một bí danh ảnh hưởng đến cái kia:aliased. Since lists are mutable, changes made with one alias affect the other:

Please enter a character A-Z:
A
A is present in the list
9

Mặc dù hành vi này có thể hữu ích, đôi khi nó bất ngờ hoặc không mong muốn. Nói chung, sẽ an toàn hơn khi tránh răng cưa khi bạn đang làm việc với các đối tượng có thể thay đổi. Tất nhiên, đối với các đối tượng bất biến, không có vấn đề gì, vì chúng có thể thay đổi sau khi chúng được tạo ra.

3.12. Danh sách nhân bảnCloning lists¶

Nếu chúng tôi muốn sửa đổi một danh sách và cũng giữ một bản sao của bản gốc, chúng tôi cần có thể tạo một bản sao của danh sách, không chỉ là tài liệu tham khảo. Quá trình này đôi khi được gọi là nhân bản, để tránh sự mơ hồ của bản sao từ.cloning, to avoid the ambiguity of the word copy.

Cách dễ nhất để sao chép danh sách là sử dụng toán tử lát cắt:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
0

Lấy bất kỳ lát cắt

A is present in the list
X is not present in the list
42 tạo ra một danh sách mới. Trong trường hợp này, lát cắt xảy ra bao gồm toàn bộ danh sách.

Bây giờ chúng tôi có thể tự do thay đổi

A is present in the list
X is not present in the list
43 mà không phải lo lắng về
A is present in the list
X is not present in the list
42:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
1

3.13. Danh sách lồng nhauNested lists¶

Danh sách lồng nhau là một danh sách xuất hiện dưới dạng một yếu tố trong một danh sách khác. Trong danh sách này, phần tử có chỉ mục 3 là một danh sách lồng nhau:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
2

Nếu chúng ta in

A is present in the list
X is not present in the list
57, chúng ta sẽ nhận được
A is present in the list
X is not present in the list
58. Để trích xuất một phần tử từ danh sách lồng nhau, chúng ta có thể tiến hành hai bước:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
3

Hoặc chúng ta có thể kết hợp chúng:

Các toán tử khung đánh giá từ trái sang phải, do đó, biểu thức này có phần tử ba eth của

A is present in the list
X is not present in the list
59 và trích xuất phần tử một eth từ nó.

3.14. Chuỗi và danh sáchStrings and lists¶

Python có một số công cụ kết hợp danh sách các chuỗi thành các chuỗi và các chuỗi riêng biệt thành danh sách các chuỗi.

Lệnh

A is present in the list
X is not present in the list
60 lấy loại trình tự làm đối số và tạo một danh sách trong số các yếu tố của nó. Khi được áp dụng cho một chuỗi, bạn nhận được một danh sách các ký tự.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
4

Phương thức

A is present in the list
X is not present in the list
61 được gọi trên một chuỗi và tách chuỗi thành một danh sách các chuỗi, phá vỡ nó bất cứ khi nào một chuỗi con được gọi là dấu phân cách xảy ra. Phân đoạn mặc định là khoảng trắng, bao gồm không gian, tab và newlines.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
5

Ở đây chúng tôi có

A is present in the list
X is not present in the list
62 là dấu phân cách.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
6

Lưu ý rằng dấu phân cách không xuất hiện trong danh sách.

Phương pháp

A is present in the list
X is not present in the list
63 thực hiện xấp xỉ oposite của phương pháp
A is present in the list
X is not present in the list
61. Nó lấy một danh sách các chuỗi làm đối số và trả về một chuỗi của tất cả các yếu tố danh sách được kết hợp với nhau.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
7

Giá trị chuỗi mà phương thức

A is present in the list
X is not present in the list
63 được gọi hoạt động như một dấu phân cách được đặt giữa mỗi phần tử trong danh sách trong chuỗi được trả về.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
8

Dấu tách cũng có thể là chuỗi trống.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'

count = l1.count(s)
if count > 0:
    print(f'{s} is present in the list for {count} times.')
9

3.15. Tuple Ghépter¶Tuple assignment¶

Thỉnh thoảng, rất hữu ích khi trao đổi các giá trị của hai biến. Với các câu lệnh gán thông thường, chúng tôi phải sử dụng một biến tạm thời. Ví dụ: để hoán đổi

A is present in the list
X is not present in the list
42 và
A is present in the list
X is not present in the list
43:

Nếu chúng ta phải làm điều này thường xuyên, cách tiếp cận này trở nên cồng kềnh. Python cung cấp một hình thức chuyển nhượng tuple giải quyết vấn đề này một cách gọn gàng:tuple assignment that solves this problem neatly:

Phía bên trái là một bộ biến của các biến; Phía bên phải là một tuple của các giá trị. Mỗi giá trị được gán cho biến tương ứng của nó. Tất cả các biểu thức ở phía bên phải được đánh giá trước bất kỳ bài tập nào. Tính năng này làm cho việc gán tuple khá linh hoạt.

Đương nhiên, số lượng biến ở bên trái và số lượng giá trị bên phải phải giống nhau:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
0

3.16. Giá trị BooleanBoolean values¶

Bây giờ chúng ta sẽ xem xét một loại giá trị mới - giá trị Boolean - được đặt theo tên của nhà toán học người Anh, George Boole. Ông đã tạo ra toán học mà chúng ta gọi là Đại số Boolean, là cơ sở của tất cả các số học máy tính hiện đại.

Ghi chú

Đó là một khả năng của máy tính để thay đổi luồng thực thi của nó tùy thuộc vào việc giá trị boolean là đúng hay sai, tạo ra một máy tính mục đích chung không chỉ là một máy tính.

Chỉ có hai giá trị Boolean,

A is present in the list
X is not present in the list
01 và
A is present in the list
X is not present in the list
16.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
1

Viết hoa là quan trọng, vì

A is present in the list
X is not present in the list
70 và
A is present in the list
X is not present in the list
71 không phải là giá trị boolean trong Python .:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
2

3.17. Boolean Biểu cảmBoolean expressions¶

Một biểu thức boolean là một biểu thức đánh giá giá trị boolean.boolean expression is an expression that evaluates to a boolean value.

Nhà điều hành

A is present in the list
X is not present in the list
49 so sánh hai giá trị và tạo ra giá trị boolean:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
3

Trong câu lệnh đầu tiên, hai toán hạng là bằng nhau, do đó biểu thức đánh giá thành

A is present in the list
X is not present in the list
01; Trong tuyên bố thứ hai, 5 không bằng 6, vì vậy chúng tôi nhận được
A is present in the list
X is not present in the list
16.

Toán tử

A is present in the list
X is not present in the list
49 là một trong sáu nhà khai thác so sánh phổ biến; Những người khác là:comparison operators; the others are:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
4

Mặc dù các hoạt động này có thể quen thuộc với bạn, các biểu tượng Python khác với các biểu tượng toán học. Một lỗi phổ biến là sử dụng một dấu hiệu bằng nhau (

A is present in the list
X is not present in the list
76) thay vì dấu hiệu gấp đôi (
A is present in the list
X is not present in the list
49). Hãy nhớ rằng
A is present in the list
X is not present in the list
76 là toán tử gán và
A is present in the list
X is not present in the list
49 là một toán tử so sánh. Ngoài ra, không có thứ gọi là
A is present in the list
X is not present in the list
80 hoặc
A is present in the list
X is not present in the list
81.

3.18. Người vận hành logicLogical operators¶

Có ba toán tử logic:

A is present in the list
X is not present in the list
82,
A is present in the list
X is not present in the list
83 và
A is present in the list
X is not present in the list
84. Các ngữ nghĩa (có nghĩa) của các toán tử này tương tự như ý nghĩa của chúng trong tiếng Anh. Ví dụ,
A is present in the list
X is not present in the list
85 chỉ đúng nếu
A is present in the list
X is not present in the list
86 lớn hơn 0 và đồng thời, x nhỏ hơn 10.logical operators:
A is present in the list
X is not present in the list
82,
A is present in the list
X is not present in the list
83, and
A is present in the list
X is not present in the list
84. The semantics (meaning) of these operators is similar to their meaning in English. For example,
A is present in the list
X is not present in the list
85 is true only if
A is present in the list
X is not present in the list
86 is greater than 0 and at the same time, x is less than 10.

A is present in the list
X is not present in the list
87 là đúng nếu một trong hai điều kiện là đúng, nghĩa là, nếu số này chia hết cho 2 hoặc chia hết cho 3.

Cuối cùng, toán tử

A is present in the list
X is not present in the list
84 phủ nhận biểu thức boolean, do đó
A is present in the list
X is not present in the list
89 là đúng nếu
A is present in the list
X is not present in the list
90 là sai, nghĩa là, nếu
A is present in the list
X is not present in the list
86 nhỏ hơn hoặc bằng
A is present in the list
X is not present in the list
92.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
5

3.19. Đánh giá ngắn mạchShort-circuit evaluation¶

Các biểu thức boolean trong Python sử dụng đánh giá ngắn mạch, có nghĩa là chỉ đối số đầu tiên của biểu thức

A is present in the list
X is not present in the list
82 hoặc
A is present in the list
X is not present in the list
83 được đánh giá khi giá trị của nó là hợp lý để xác định giá trị của toàn bộ biểu thức.short-circuit evaluation, which means only the first argument of an
A is present in the list
X is not present in the list
82 or
A is present in the list
X is not present in the list
83 expression is evaluated when its value is suffient to determine the value of the entire expression.

Điều này có thể khá hữu ích trong việc ngăn ngừa lỗi thời gian chạy. Hãy tưởng tượng bạn muốn kiểm tra xem số thứ năm trong một số nguyên có tên

A is present in the list
X is not present in the list
95 có chẵn không.

Biểu thức sau đây sẽ hoạt động:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
6

Tất nhiên trừ khi không có 5 yếu tố trong

A is present in the list
X is not present in the list
95, trong trường hợp đó bạn sẽ nhận được:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
7

Đánh giá ngắn mạch làm cho nó có thể tránh được vấn đề này.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
8

Vì phía bên trái của biểu thức

A is present in the list
X is not present in the list
82 này là sai, Python không cần phải đánh giá phía bên phải để xác định rằng toàn bộ biểu thức là sai. Vì nó sử dụng đánh giá ngắn mạch, nó không và tránh lỗi thời gian chạy.

3.20. "Sự thật"“Truthiness”¶

Tất cả các giá trị Python đều có một sự thật của người Viking, hay giả mạo, điều đó có nghĩa là chúng có thể được sử dụng ở những nơi yêu cầu Boolean. Đối với các loại số và trình tự mà chúng ta đã thấy cho đến nay, sự thật được định nghĩa như sau:

Các loại số

Các giá trị bằng 0 là sai, tất cả các giá trị khác là đúng.

Các loại trình tự

Trình tự trống là sai, các chuỗi không trống là đúng.

Kết hợp khái niệm về sự thật này với sự hiểu biết về đánh giá ngắn mạch cho phép có thể hiểu được Python đang làm gì trong các biểu thức sau:

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)

while i < length:
    if s == l1[i]:
        matched_indexes.append(i)
    i += 1

print(f'{s} is present in {l1} at indexes {matched_indexes}')
9

3.21. Bảng chú giải¶Glossary¶

bí danh

Nhiều biến có chứa tham chiếu đến cùng một đối tượng.

giá trị boolean

Có chính xác hai giá trị boolean:

A is present in the list
X is not present in the list
01 và
A is present in the list
X is not present in the list
16. Các giá trị Boolean kết quả khi biểu thức boolean được đánh giá bởi python interepreter. Họ có loại
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
00.

Biểu hiện boolean

Một biểu thức là đúng hoặc sai.

dòng vô tính

Để tạo một đối tượng mới có cùng giá trị như một đối tượng hiện có. Sao chép một tham chiếu đến một đối tượng tạo ra một bí danh nhưng không sao chép đối tượng.

Nhà điều hành so sánh

Một trong những toán tử so sánh hai giá trị:

A is present in the list
X is not present in the list
49,
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
02,
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
03,
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
04,
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
05 và
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
06.

Kiểu dữ liệu hỗn hợp

Một loại dữ liệu trong đó các giá trị được tạo thành từ các thành phần hoặc phần tử, đó là các giá trị của chúng.

yếu tố

Một trong những phần tạo nên loại trình tự (chuỗi, danh sách hoặc tuple). Các yếu tố có một giá trị và một chỉ mục. Giá trị được truy cập bằng cách sử dụng toán tử chỉ mục (

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
07) trên chuỗi.

Kiểu dữ liệu bất biến

Một kiểu dữ liệu không thể sửa đổi. Bài tập cho các phần tử hoặc lát cắt các loại bất biến gây ra lỗi thời gian chạy.

mục lục

Một biến hoặc giá trị được sử dụng để chọn một thành viên của bộ sưu tập được đặt hàng, chẳng hạn như ký tự từ chuỗi hoặc phần tử từ danh sách hoặc tuple.

toán tử logic

Một trong những toán tử kết hợp các biểu thức boolean:

A is present in the list
X is not present in the list
82,
A is present in the list
X is not present in the list
83 và
A is present in the list
X is not present in the list
84.

Loại dữ liệu có thể thay đổi

Một kiểu dữ liệu có thể được sửa đổi. Tất cả các loại có thể thay đổi là các loại hợp chất. Danh sách và từ điển là các loại dữ liệu có thể thay đổi; Chuỗi và bộ dữ liệu không.

danh sách lồng nhau

Một danh sách là một yếu tố của một danh sách khác.

lát cắt

Một phần của chuỗi (chuỗi con) được chỉ định bởi một loạt các chỉ số. Tổng quát hơn, có thể tạo ra một phần trăm của bất kỳ loại trình tự nào trong Python bằng toán tử lát cắt (

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
11).

cỡ bước chân

Khoảng thời gian giữa các yếu tố liên tiếp của một chuỗi tuyến tính. Đối số thứ ba (và đối số tùy chọn) cho hàm

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')

if s in l1:
    print(f'{s} is present in the list')
else:
    print(f'{s} is not present in the list')
12 được gọi là kích thước bước. Nếu không được chỉ định, nó mặc định là 1.

đi qua

Để lặp lại thông qua các yếu tố của một bộ sưu tập, thực hiện một thao tác tương tự trên mỗi.

Tuple

Một loại dữ liệu chứa một chuỗi các yếu tố thuộc bất kỳ loại nào, như một danh sách, nhưng là bất biến. Tuples có thể được sử dụng bất cứ nơi nào một loại bất biến là bắt buộc, chẳng hạn như một khóa trong từ điển (xem chương tiếp theo).

nhiệm vụ chuyển nhượng

Một bài tập cho tất cả các yếu tố trong một tuple bằng cách sử dụng một câu lệnh gán duy nhất. Việc gán tuple xảy ra song song chứ không phải theo trình tự, làm cho nó hữu ích cho việc hoán đổi các giá trị.

Bạn có thể đặt các chuỗi vào một danh sách trong Python không?

Phương thức Split () là phương thức được đề xuất và phổ biến nhất được sử dụng để chuyển đổi chuỗi thành liệt kê trong Python..

Bạn có thể lưu trữ chuỗi trong một danh sách?

Để làm điều này, chúng tôi sử dụng phương thức chia () trong chuỗi.Phương pháp phân chia được sử dụng để phân chia các chuỗi và lưu trữ chúng trong danh sách.Phương thức tích hợp trả về một danh sách các từ trong chuỗi, sử dụng Delimiter, làm chuỗi phân cách.The split method is used to split the strings and store them in the list. The built-in method returns a list of the words in the string, using the “delimiter” as the delimiter string.

Chuỗi có thể được chuyển đổi thành danh sách không?

Bạn cũng có thể chuyển đổi một chuỗi thành một danh sách bằng cách sử dụng một dấu phân cách với phương thức chia ().Bộ phân cách có thể là bất kỳ ký tự bạn chỉ định.Chuỗi sẽ tách biệt dựa trên dấu phân cách bạn cung cấp.Ví dụ: bạn có thể sử dụng dấu phẩy ,, làm dấu phân cách.. The separator can be any character you specify. The string will separate based on the separator you provide. For example, you can use a comma, , , as the separator.