Python có chức năng tích hợp
sum[[1,2,3], 0] = sum2[[1,2,3],0] = 6 #Note: 0 is the default value for start, but I include it for clarity
sum[{888:1}, 0] = sum2[{888:1},0] = 888
0, tương đương với:def sum2[iterable, start=0]:
return start + reduce[operator.add, iterable]
Đối với tất cả các loại tham số ngoại trừ chuỗi. Nó hoạt động cho các số và danh sách, ví dụ:
sum[[1,2,3], 0] = sum2[[1,2,3],0] = 6 #Note: 0 is the default value for start, but I include it for clarity
sum[{888:1}, 0] = sum2[{888:1},0] = 888
Tại sao dây bị bỏ lại đặc biệt?
sum[ ['foo','bar'], ''] # TypeError: sum[] can't sum strings [use ''.join[seq] instead]
sum2[['foo','bar'], ''] = 'foobar'
Tôi dường như nhớ các cuộc thảo luận trong danh sách Python vì lý do, vì vậy một lời giải thích hoặc một liên kết đến một chủ đề giải thích nó sẽ ổn.
Chỉnh sửa: Tôi biết rằng cách tiêu chuẩn là làm
1. Câu hỏi của tôi là tại sao tùy chọn sử dụng Sum cho các chuỗi bị cấm và không có lệnh cấm nào ở đó, nói, danh sách.: I am aware that the standard way is to do sum[[1,2,3], 0] = sum2[[1,2,3],0] = 6 #Note: 0 is the default value for start, but I include it for clarity
sum[{888:1}, 0] = sum2[{888:1},0] = 888
sum[[1,2,3], 0] = sum2[[1,2,3],0] = 6 #Note: 0 is the default value for start, but I include it for clarity
sum[{888:1}, 0] = sum2[{888:1},0] = 888
1. My question is why
the option of using sum for strings was banned, and no banning was there for, say, lists.EDIT 2: Mặc dù tôi tin rằng điều này là không cần thiết với tất cả các câu trả lời tốt mà tôi có, câu hỏi là: Tại sao Sum hoạt động trên một số có thể có các số hoặc một danh sách có thể có được nhưng không phải là một chuỗi có thể có được?: Although I believe this is not needed given all the good answers I got, the question is: Why does sum work on an iterable containing numbers or an iterable containing lists but not an iterable containing strings?
Chuỗi Python: Bài tập-62 với giải pháp
Viết một chương trình Python để tính tổng số chữ số của một chuỗi đã cho.
Giải pháp mẫu:-:-
Mã Python:
def sum_digits_string[str1]:
sum_digit = 0
for x in str1:
if x.isdigit[] == True:
z = int[x]
sum_digit = sum_digit + z
return sum_digit
print[sum_digits_string["123abcd45"]]
print[sum_digits_string["abcd1234"]]
Đầu ra mẫu:
15 10
Trình bày bằng hình ảnh:
Flowchart:
Trực quan hóa thực thi mã Python:
Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:
Trình chỉnh sửa mã Python:
Có một cách khác để giải quyết giải pháp này? Đóng góp mã của bạn [và nhận xét] thông qua Disqus.
Trước đây: Viết chương trình Python để xóa các ký tự trùng lặp của một chuỗi đã cho. Write a Python program to remove duplicate characters of a given string.
Next: Write a Python program to remove leading zeros from an IP address.
Python: Lời khuyên trong ngày
Tạo NgRAM từ Itable:
>>> from itertools import islice >>> def n_grams[a, n]: ... z = [islice[a, i, None] for i in range[n]] ... return zip[*z] ... >>> a = [1, 2, 3, 4, 5, 6] >>> n_grams[a, 3] [[1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6]] >>> n_grams[a, 2] [[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]] >>> n_grams[a, 4] [[1, 2, 3, 4], [2, 3, 4, 5], [3, 4, 5, 6]]
Sử dụng các hàm loại [] và isDigit [] trong python để đạt được một danh sách tổng số các chuỗi trong Python. Hàm này sẽ kiểm tra xem phần tử là int, sau đó thêm tổng số bằng cách kiểm tra hai điều kiện. isdigit[] functions in Python to achieve a sum list of strings in Python. This function will check If the element is int, then add it to the total by checking two conditions.
Mã ví dụ đơn giản thêm tất cả các số từ danh sách. Trong đó danh sách đã cho có thể chứa các số ở định dạng chuỗi hoặc số nguyên.
lst = [1, '10', 'Hello', '2020', '[email protected]', 2021]
total = 0
# iterating over the list
for element in lst:
# checking whether its a number or not
if isinstance[element, int] or element.isdigit[]:
# adding the element to the total
total += int[element]
print[total]
Output::
Hoặc sử dụng danh sách hiểu
total = sum[[int[i] for i in lst if type[i]== int or i.isdigit[]]]
Làm thế nào để tổng hợp một danh sách các đối tượng chuỗi trong Python?
Trả lời: Chỉ in chữ cái đầu tiên của mỗi từ để tạo một từ mới.: Prints only the first letter of each word in order to make one new word.
Nếu các từ được phân tách bằng không gian, thì hãy chia thành các từ bằng cách sử dụng không gian và cho mỗi từ [hàm bản đồ trên bản đồ], hãy lấy ký tự đầu tiên [x [0]]. Cuối cùng tham gia kết quả bằng cách sử dụng void.
s = "this is my sentence"
res = "".join[map[lambda x: x[0], s.split[" "]]]
print[res]
Hoặc sử dụng đơn giản
res = "".join[x[0] for x in s.split[]]
Đầu ra: Tims: tims
Hãy bình luận nếu bạn có bất kỳ nghi ngờ hoặc đề xuất nào về chủ đề tổng python này.
Lưu ý: IDE: & NBSP; Pycharm & NBSP; 2021.3.3 [Phiên bản cộng đồng] IDE: PyCharm 2021.3.3 [Community Edition]
Windows 10
Python 3.10.1
Tất cả & nbsp; ví dụ python & nbsp; là trong & nbsp; Python & nbsp; 3, vì vậy có thể khác với các phiên bản Python 2 hoặc nâng cấp. Python Examples are in Python 3, so Maybe its different from python 2 or upgraded versions.
Bằng cấp về Khoa học máy tính và Kỹ sư: Nhà phát triển ứng dụng và có nhiều ngôn ngữ lập trình kinh nghiệm. Sự nhiệt tình cho công nghệ và thích học kỹ thuật.