Cách in mọi từ khác trong python

Vấn đề. Làm cách nào để truy cập hoặc in chữ cái thứ n của mỗi từ trong chuỗi đã cho bằng ngôn ngữ lập trình Python?

Để có được chữ cái thứ nth của mỗi từ trong câu đã cho, trước tiên chúng ta phải trích xuất các từ trong câu

Chúng ta có thể dễ dàng đạt được điều này bằng phương pháp Python split()

Phương thức split() trong Python trả về một danh sách các từ bằng cách tách câu trên cơ sở dấu phân cách đã chỉ định. Nếu dấu tách không được chỉ định, nó sẽ ngắt chuỗi trên khoảng trắng

>>> st = "pencil programmer"
>>> print(st.split())
['pencil', 'programmer']

Sau khi chúng tôi nhận được một danh sách các từ, chúng tôi có thể lặp qua danh sách và lấy chữ cái thứ n của mỗi từ bằng cách sử dụng các chỉ số

Đây là một ví dụ trong đó chúng tôi đang in chữ cái thứ 1, thứ 2 và thứ 3 của mỗi từ

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])

đầu ra

Chữ cái đầu tiên của mỗi từ.
p
p
Chữ cái thứ hai của mỗi từ.
e
r
Chữ cái thứ ba của mỗi từ.
n
o

Phương pháp trên hoạt động tốt, nhưng nếu chúng ta cố gắng truy cập chữ cái nằm ngoài phạm vi .

>>> st = "pencil programmer"
>>> for s in st.split():
>>>    print(s[10])
Traceback (most recent call last):
  File "", line 5, in 
IndexError: string index out of range

Thực hành tốt nhất để truy cập chữ cái thứ n

Trước tiên, tốt hơn là kiểm tra xem giá trị của n có nhỏ hơn hoặc bằng độ dài của từ hay không, nếu có thì chỉ in chữ cái thứ n

st = "pencil programmer"
n = 7

print(f"{n}th Letter of Each Word:")
for word in st.split():
    print(word[n] if n < len(word) else None)

đầu ra

Chữ cái thứ 7 của mỗi từ.
Không có
m

Trong ví dụ lập trình này, chúng ta đã học cách truy cập và in chữ cái thứ n của mỗi từ trong chuỗi trong .

Danh sách là một trong những loại dữ liệu linh hoạt hơn trong số những loại khác được cung cấp trong Python. Như chúng ta biết, danh sách có thể lưu trữ nhiều mục trong một biến duy nhất, thường chỉ cần lấy một số mục từ danh sách nhất định

Nhận mọi phần tử khác trong danh sách bằng Python

Hướng dẫn này tập trung vào và trình bày các cách khác nhau có sẵn để lấy mọi phần tử khác trong danh sách trong python

Có rất nhiều cách để giải quyết vấn đề này, từ cách cắt danh sách đơn giản đến hàm lambda, tất cả đều đã được giải thích cặn kẽ trong bài viết dưới đây

Sử dụng List Slicing

Việc cắt danh sách là một phương pháp phổ biến và được sử dụng để truy cập các phần tử của danh sách trong một phạm vi đã chỉ định.
Việc cắt danh sách có thể trả về một danh sách mới, cụ thể hơn từ danh sách ban đầu bằng cách lấy các giá trị start, endstep do người dùng chỉ định. Cả ba đều được phân tách bằng dấu hai chấm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
0.

Các thông số nêu trên có giải thích như sau

  • bắt đầu. Điểm bắt đầu của phạm vi mà người dùng xác định
  • kết thúc. Điểm cuối của phạm vi mà người dùng xác định
  • bươc. số bước mà người dùng có thể xác định

Đoạn mã sau sử dụng cắt danh sách để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng danh sách cắt

1

2

3

4

5

 

x = [10,20,30,40,50,60,70,80,90,100]

y = x[. . 2]

in(y)

 

đầu ra

[10,30,50,70,90]

Sử dụng hàm st="pencil programmer" print("First Letter of Each Word:") for word in st.split(): print(word[0]) print("Second Letter of Each Word:") for word in st.split(): print(word[1]) print("Third Letter of Each Word:") for word in st.split(): print(word[2])1 cùng với hàm st="pencil programmer" print("First Letter of Each Word:") for word in st.split(): print(word[0]) print("Second Letter of Each Word:") for word in st.split(): print(word[1]) print("Third Letter of Each Word:") for word in st.split(): print(word[2])2

Phương thức

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
1, như tên cho thấy, được sử dụng để nối các mục trong một danh sách nhất định.
Hàm
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 được sử dụng để chỉ định một phạm vi mà hàm sẽ được áp dụng. Hàm này có ba tham số là start,
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
6 và step. Tất cả ba từ này được phân tách bằng dấu phẩy [end1].

  • bắt đầu. Nó đánh dấu sự khởi đầu của phạm vi
  • dừng lại. Nó đánh dấu sự kết thúc của phạm vi
  • bươc. Nó đánh dấu giá trị bước sẽ được thực hiện

Đoạn mã sau sử dụng hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
1 cùng với hàm
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng danh sách. hàm append() cùng với hàm range()

1

2

3

4

5

6

7

8

9

 

x = [10,20,30,40,50,60,70,80,90,100]

def ese(a):

       y = [ ]

       cho i trong phạm vi(1,len(a),2):

           y. chắp thêm(a[i])

       trả lại y

in(ese(x))

 

đầu ra

[20,40,60,80,100]

Đây là bài viết về cách tăng vòng lặp for lên 2 trong Python

Sử dụng khả năng hiểu danh sách và hàm st="pencil programmer" print("First Letter of Each Word:") for word in st.split(): print(word[0]) print("Second Letter of Each Word:") for word in st.split(): print(word[1]) print("Third Letter of Each Word:") for word in st.split(): print(word[2])2 với điều kiện

Khả năng hiểu danh sách có khả năng tạo danh sách có tham chiếu đến danh sách đã tồn tại. Nó cũng làm giảm đoạn mã và làm cho mã gọn hơn.
Ở đây, chúng ta sử dụng hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 với các điều kiện thay vì các tham số start,
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
6 và step theo quy ước.

Đoạn mã sau sử dụng khả năng hiểu danh sách và hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 có điều kiện để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng khả năng hiểu danh sách và hàm range() với điều kiện

1

2

3

4

 

x = [10,20,30,40,50,60,70,80,90,100]

in([x[i] for i in range(len(x)) if i % 2 == 0])

 

đầu ra

[10,30,50,70,90]

Sử dụng khả năng hiểu danh sách và hàm st="pencil programmer" print("First Letter of Each Word:") for word in st.split(): print(word[0]) print("Second Letter of Each Word:") for word in st.split(): print(word[1]) print("Third Letter of Each Word:") for word in st.split(): print(word[2])2 với bước

Việc hiểu danh sách, như chúng ta biết, giúp chúng ta tránh vòng lặp step1 chung chung và có thể hoàn thành mã trong một dòng.
Ở đây, chúng tôi sử dụng hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 với các hàm start,
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
6 và step thông thường để thực hiện nhiệm vụ hiện tại.

Đoạn mã sau sử dụng khả năng hiểu danh sách và hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 với bước để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng khả năng hiểu danh sách và hàm range() với bước

1

2

3

4

 

x = [10,20,30,40,50,60,70,80,90,100]

in([x[i] for i in range(0,len(x),2)])

 

đầu ra

[10,30,50,70,90]

đọc thêm

So sánh các phần tử danh sách với nhau trong Python

Đọc thêm →

Tìm các phần tử chung trong hai danh sách trong python

Đọc thêm →

Sử dụng hàm step7 cùng với khả năng hiểu danh sách

Hàm step7 là một bổ sung hữu ích cho mã Python của người dùng vì mục đích này phục vụ chức năng hỗ trợ người dùng bằng cách thêm bộ đếm vào bất kỳ lần lặp cụ thể nào và trả về nó dưới dạng đối tượng liệt kê

Khả năng hiểu danh sách, khi được sử dụng cùng với hàm step7, có khả năng thực hiện nhiệm vụ lấy mọi phần tử khác trong danh sách bằng Python

Đoạn mã sau sử dụng hàm step7 cùng với khả năng hiểu danh sách để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng hàm enumerate() cùng với khả năng hiểu danh sách

1

2

3

4

 

x = [10,20,30,40,50,60,70,80,90,100]

in ([a cho i, a in enumerate(x) if i % 2 == 0])

 

đầu ra

[10, 30, 50, 70, 90]

Sử dụng hàm lambda

Hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
01 là một hàm ẩn danh có khả năng giữ một biểu thức duy nhất trong khi nhận n số đối số

Hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
01 có thể thực hiện nhiệm vụ lấy mọi phần tử khác trong danh sách bằng Python khi được sử dụng với hàm
st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
2 và chỉ định điều kiện

Cách tiếp cận này cũng sử dụng một hàm

st="pencil programmer"

print("First Letter of Each Word:")
for word in st.split():
    print(word[0])
    
print("Second Letter of Each Word:")
for word in st.split():
    print(word[1])
    
print("Third Letter of Each Word:")
for word in st.split():
    print(word[2])
04 bổ sung được sử dụng để đặt các phần tử của một chuỗi đã cho theo một điều kiện và kiểm tra xem chúng có đúng hay không. Trên cơ sở này, nó lọc trình tự đã chỉ định

Đoạn mã sau sử dụng hàm lambda để lấy mọi phần tử khác trong danh sách bằng Python

Sử dụng hàm lambda

1

2

3

4

5

 

x = [10,20,30,40,50,60,70,80,90,100]

y = [x[i] for i in filter(lambda a: a % 2 == 1, range(len(x)))]

in(y)

 

đầu ra

[20, 40, 60, 80, 100]

Phần kết luận

Hướng dẫn này thảo luận về một số phương pháp thực hiện thành công nhiệm vụ lấy mọi phần tử khác trong danh sách bằng Python. Một số phương pháp có thể khá phức tạp đối với người mới bắt đầu hiểu nhưng tất cả các phương pháp đều cung cấp câu trả lời chính xác. Lập trình viên có thể chọn một trong số rất nhiều tùy thuộc vào kết quả mà họ đang tìm kiếm