Trong chương trình này, bạn sẽ học cách đếm số lượng của mỗi nguyên âm trong một chuỗi bằng cách sử dụng từ điển và danh sách hiểu.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình Python sau:
- Python cho vòng lặp
- Chuỗi Python
- Phương thức chuỗi
Mã nguồn: Sử dụng từ điển
# Program to count the number of each vowels
# string of vowels
vowels = 'aeiou'
ip_str = 'Hello, have you tried our tutorial section yet?'
# make it suitable for caseless comparisions
ip_str = ip_str.casefold[]
# make a dictionary with each vowel a key and value 0
count = {}.fromkeys[vowels,0]
# count the vowels
for char in ip_str:
if char in count:
count[char] += 1
print[count]
Đầu ra
{'o': 5, 'i': 3, 'a': 2, 'e': 5, 'u': 3}
Ở đây, chúng tôi đã lấy một chuỗi được lưu trữ trong IP_STR. Sử dụng phương pháp casefold[]
, chúng tôi làm cho nó phù hợp cho các so sánh không đồng ý. Về cơ bản, phương thức này trả về một phiên bản thấp hơn của chuỗi.
Chúng tôi sử dụng phương pháp từ điển fromkeys[]
để xây dựng một từ điển mới với mỗi nguyên âm làm khóa của nó và tất cả các giá trị bằng 0. Đây là việc khởi tạo số đếm.
Tiếp theo, chúng tôi lặp lại chuỗi đầu vào bằng cách sử dụng một vòng lặp.
Trong mỗi lần lặp, chúng tôi kiểm tra xem ký tự nằm trong các khóa từ điển [True
nếu đó là nguyên âm] và tăng giá trị lên 1 nếu đúng.
Mã nguồn: Sử dụng danh sách và khả năng hiểu từ điển
# Using dictionary and list comprehension
ip_str = 'Hello, have you tried our tutorial section yet?'
# make it suitable for caseless comparisions
ip_str = ip_str.casefold[]
# count the vowels
count = {x:sum[[1 for char in ip_str if char == x]] for x in 'aeiou'}
print[count]
Đầu ra của chương trình này giống như trên.output of this program is the same as above.
Ở đây, chúng tôi đã lồng một danh sách hiểu biết bên trong một từ điển hiểu để đếm các nguyên âm trong một dòng.
Sự hiểu biết từ điển chạy cho tất cả các ký tự nguyên âm và sự hiểu biết trong danh sách bên trong từ điển hiểu biết nếu có bất kỳ ký tự nào trong chuỗi khớp với nguyên âm cụ thể đó.
Cuối cùng, một danh sách với 1S được tạo cho số lượng của mỗi ký tự nguyên âm. Phương pháp sum[]
được sử dụng để tính tổng của các phần tử cho mỗi danh sách.1s is generated for the number of each vowel character. The sum[]
method is used to calculate the sum of the elements for each list.
Tuy nhiên, chương trình này chậm hơn khi chúng tôi lặp lại toàn bộ chuỗi đầu vào cho mỗi nguyên âm.
Đây là một chương trình Python để đếm số lượng nguyên âm trong một chuỗi. Mô tả vấn đề Chương trình lấy một chuỗi và đếm số lượng nguyên âm trong một chuỗi. Giải pháp vấn đề
1. Lấy một chuỗi từ người dùng và lưu trữ nó trong một biến. 2. Khởi tạo một biến đếm thành 0. 3. Sử dụng vòng lặp để đi qua các ký tự trong chuỗi. 4. Sử dụng câu lệnh IF để kiểm tra xem ký tự có phải là nguyên âm hay không và tăng biến số đếm nếu đó là nguyên âm. 5. In tổng số nguyên âm trong chuỗi. 6. Thoát.
2. Initialize a count variable to 0.
3. Use a for loop to traverse through the characters in the
string.
4. Use an if statement to check if the character is a vowel or not and increment the count variable if it is a vowel.
5. Print the total number of vowels in the string.
6. Exit.
Chương trình/mã nguồn
Dưới đây là mã nguồn của chương trình Python để xóa ký tự chỉ mục thứ n khỏi chuỗi không trống. Đầu ra chương trình cũng được hiển thị dưới đây.
string=raw_input["Enter string:"] vowels=0 for i in string: if[i=='a' or i=='e' or i=='i' or i=='o' or i=='u' or i=='A' or i=='E' or i=='I' or i=='O' or i=='U']: vowels=vowels+1 print["Number of vowels are:"] print[vowels]
Giải thích chương trình
1. Người dùng phải nhập một chuỗi và lưu trữ nó trong một biến. 2. Biến số được khởi tạo về 0. 3. Vòng lặp For được sử dụng để đi qua các ký tự trong chuỗi. 4. Một câu lệnh IF kiểm tra xem ký tự có phải là nguyên âm hay không. 5. Số lượng được tăng lên mỗi khi một nguyên âm gặp phải. 6. Tổng số nguyên âm trong chuỗi được in.
2. The count
variable is initialized to zero.
3. The for loop is used to traverse through the characters in the string.
4. An if statement checks if the character is a vowel or not.
5. The count is incremented each time a vowel is encountered.
6. The total count of vowels in the string is printed.
Trường hợp kiểm tra thời gian chạy
Case 1: Enter string:Hello world Number of vowels are: 3 Case 2: Enter string:WELCOME Number of vowels are: 3
Sê -ri Giáo dục & Học tập toàn cầu Sanfoundry - Chương trình Python.
Để thực hành tất cả các chương trình Python, đây là bộ hoàn thành hơn 150 vấn đề và giải pháp Python.
Bước tiếp theo:
- Nhận Giấy chứng nhận miễn phí trong chương trình Python
- Tham gia cuộc thi chứng nhận lập trình Python
- Trở thành một người xếp hạng hàng đầu trong chương trình Python
- Thực hiện các bài kiểm tra lập trình Python
- Các bài kiểm tra thực hành theo chương: Chương 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10
- Các bài kiểm tra giả chương: Chương 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10,
Manish Bhojasia, một cựu chiến binh công nghệ với hơn 20 năm @ Cisco & Wipro, là người sáng lập và CTO tại Sanfoundry. Ông sống ở Bangalore, và tập trung vào sự phát triển của nhân Linux, Công nghệ San, Cvanced C, Cấu trúc dữ liệu & Alogrithms. Giữ kết nối với anh ta tại LinkedIn.Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.
Đăng ký các lớp học chính miễn phí của mình tại YouTube & Thảo luận kỹ thuật tại Telegram SanfoundryClasses.