Tôi không muốn Harangue bạn [nhưng chắc chắn là không] mà không cho bạn một câu trả lời thích hợp, vì vậy hãy bỏ qua trước nếu bạn không quan tâm đến các hoạt động mã hóa tốt.
Không sử dụng các tên biến như list
và
0 vì - trong trường hợp của st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
list
- đó là tên của loại bạn đang tạo. Trên thực tế, đó là cách bạn tạo một ví dụ trống của loại bạn đang tạo: use variable names like list
and
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
0 because - in the case of list
- that's the name of the type you're making. In fact, that's how you make an empty instance of the type you're making:something=list[] # this is an empty list!
Điều này sẽ làm cho nó khó hiểu khi tham khảo
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
2 hoặc một cái gì đó dọc theo các dòng đó. Vì vậy, bạn rõ ràng đã không gặp bất kỳ lỗi nào, nhưng vì khả năng đọc, hãy cố gắng đưa ra các tên biến có ý nghĩa.Được rồi, tôi đã hoàn thành lời ca ngợi của mình, mã bạn đang tìm kiếm là
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
Tôi đã thực hiện một số bước này nâng cao hơn so với thử thách mà bạn đang trình bày để ngăn cản bạn sử dụng nó trong một nhiệm vụ, nếu đó là mục tiêu của bạn. Một số công cụ được sử dụng trong giải pháp này ít nhất đi trước một chút so với những gì bạn đang làm việc, nhưng nếu bạn chỉ học Python để nhận phần thưởng của mã thì tôi hy vọng điều này sẽ được chiếu sáng nhất và có thể khiến bạn suy nghĩ Về một số thứ hoàn toàn mát mẻ bạn có thể làm chính xác với Python. Với tất cả những gì đã nói, hãy đi qua nó:a little further ahead of what you're working with, but if you're just learning Python for the reward of understanding code then I hope this will be most illuminating and maybe get you thinking about some of the radically cool stuff you can do concisely with Python. With all that said, let's walk through it:
Tôi sẽ cho rằng nhiệm vụ
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
3 đủ rõ ràng rằng chúng ta không cần phải thảo luận về nó, nhưng lưu ý rằng tôi đã chia nó ngay tại đó khi tôi gán nó. Tôi chỉ lười biếng và chúng ta có thể làm điều đó trong hai bước, nhưng đây không phải là vấn đề của vấn đề nên chúng ta hãy tiếp tục.c=[len[i] for i in st]
Chỉ có nghĩa là "Đối với mỗi yếu tố, mà chúng ta sẽ gọi
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
4, trong st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
3, trả lại cho tôi st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
6 trong một danh sách và lập danh sách đó st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
7". Điều đó có vẻ khó khăn, nhưng danh sách toàn diện thực sự không tệ đến thế, và như bạn có thể thấy họ giúp bạn tiết kiệm khá nhiều thời gian trong mã hóa. Đây là một triển khai khá khiêm tốn của nó, thực sự.counts=[0]*max[c]
Nói để lập một danh sách với
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
8 trong mỗi không gian và làm cho nó lặp lại tuy nhiên nhiều lần là st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
9 của st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
7. Vì vậy, điều này sẽ lấy từ dài nhất, trong trường hợp này là từ 6 chữ 'thực sự' và làm cho danh sách 6 yếu tố dài. Điều này sẽ đảm bảo rằng chúng tôi có một danh sách với khoảng trống cho mỗi từ dài mà chúng tôi gặp phải.for i in range[len[c]]:
counts[c[i]-1]+=1
Ôi trời, bây giờ chúng ta đang nấu ăn. Xem rằng chúng tôi đang lặp lại trong danh sách
st='Did the quick brown fox really jump over the fence'.split[]
c=[len[i] for i in st] # gives [3, 3, 5, 5, 3, 6, 4, 4, 3, 5]
counts=[0]*max[c] # gives [0, 0, 0, 0, 0, 0]
for i in range[len[c]]:
counts[c[i]-1]+=1 # adds 1 to each index of c[i] [we subtract 1 because of 0-based indices]
print[counts] # gives us the answer: [0, 0, 4, 2, 3, 1]
7, vì vậy mỗi mục chúng tôi nhận được thông qua nó sẽ là độ dài của các từ tương ứng:- Phần tử đầu tiên sẽ là
2, tương ứng vớic=[len[i] for i in st]
3.c=[len[i] for i in st]
- Phần tử thứ hai sẽ là
2, tương ứng vớic=[len[i] for i in st]
5.c=[len[i] for i in st]
- ...
- Phần tử cuối cùng sẽ là
6, tương ứng vớic=[len[i] for i in st]
7.c=[len[i] for i in st]
Vì vậy, đó là những gì
c=[len[i] for i in st]
8 là về, nhưng c=[len[i] for i in st]
9 là gì? Vâng, counts=[0]*max[c]
0 sẽ thêm counts=[0]*max[c]
1 vào mỗi độ dài bạn tìm thấy, vì vậy nó sẽ thêm counts=[0]*max[c]
1 vào thùng khi nó dài 3 ký tự. c=[len[i] for i in st]
8 sẽ cung cấp cho bạn c=[len[i] for i in st]
2 trên phần tử đầu tiên, nhưng vì các danh sách là 0 chỉ số [danh sách bắt đầu từ 0 và tăng từ đó], bạn cần phải bồi thường - do đó counts=[0]*max[c]
5. Vì vậy, chúng ta thấy c=[len[i] for i in st]
9 và bây giờ nó có ý nghĩa hơn một chút, phải không?counts[c[i]-1] # this means counts[3-1] which means go find the bin corresponding to counts[2]
# ---v this one
[0,0,0,0,0]
và
counts=[0]*max[c]
7 đơn giản có nghĩa là "thêm 1 vào bất cứ điều gì đã có".Python sẽ vui vẻ lặp đi lặp lại thông qua đó và cho bạn câu trả lời.
Trong Python, bạn sử dụng một danh sách để lưu trữ nhiều loại dữ liệu khác nhau như chuỗi và số. Một danh sách có thể được xác định bởi các dấu ngoặc vuông bao quanh nó và các giá trị riêng lẻ được phân tách bằng dấu phẩy. Để có được độ dài của một danh sách trong Python, bạn có thể sử dụng hàm
8 tích hợp.counts=[0]*max[c]
Ngoài chức năng
counts=[0]*max[c]
8, bạn cũng có thể sử dụng một vòng lặp và hàm for i in range[len[c]]:
counts[c[i]-1]+=1
0 để có độ dài của một danh sách.Trong bài viết này, tôi sẽ chỉ cho bạn cách có được độ dài của một danh sách theo 3 cách khác nhau.
Bạn có thể sử dụng bản địa cho vòng lặp của Python để có được độ dài của một danh sách vì giống như một tuple và từ điển, một danh sách là có thể sử dụng được.
Phương pháp này thường được gọi là phương pháp ngây thơ.
Ví dụ dưới đây cho bạn biết cách sử dụng phương pháp ngây thơ để có được độ dài của một danh sách trong Python
demoList = ["Python", 1, "JavaScript", True, "HTML", "CSS", 22]
# Initializing counter variable
counter = 0
for item in demoList:
# Incrementing counter variable to get each item in the list
counter = counter + 1
# Printing the result to the console by converting counter to string in order to get the number
print["The length of the list using the naive method is: " + str[counter]]
# Output: The length of the list using the naive method is: 7
Cách có được độ dài của một danh sách với hàm counts=[0]*max[c]
8
counts=[0]*max[c]
Sử dụng chức năng
counts=[0]*max[c]
8 là cách phổ biến nhất để có được độ dài của một điều khác.Điều này đơn giản hơn so với sử dụng một vòng lặp.
Cú pháp để sử dụng phương pháp
counts=[0]*max[c]
8 là for i in range[len[c]]:
counts[c[i]-1]+=1
4.Đoạn mã bên dưới cho thấy cách sử dụng hàm
counts=[0]*max[c]
8 để có độ dài của danh sách:demoList = ["Python", 1, "JavaScript", True, "HTML", "CSS", 22]
sizeOfDemoList = len[demoList]
print["The length of the list using the len[] method is: " + str[sizeOfDemoList]]
# Output: The length of the list using the len[] method is: 7
Cách nhận độ dài của danh sách với hàm for i in range[len[c]]:
counts[c[i]-1]+=1
0
for i in range[len[c]]:
counts[c[i]-1]+=1
Phương pháp
for i in range[len[c]]:
counts[c[i]-1]+=1
0 là một cách ít được biết đến để có được độ dài của một danh sách và các vòng lặp khác.for i in range[len[c]]:
counts[c[i]-1]+=1
0 được xác định trong mô -đun toán tử, vì vậy bạn cần nhập nó từ đó trước khi bạn có thể sử dụng nó.Cú pháp để sử dụng phương pháp
for i in range[len[c]]:
counts[c[i]-1]+=1
0 là counts[c[i]-1] # this means counts[3-1] which means go find the bin corresponding to counts[2]
# ---v this one
[0,0,0,0,0]
0.Ví dụ dưới đây cho bạn thấy cách sử dụng phương thức
for i in range[len[c]]:
counts[c[i]-1]+=1
0 để có độ dài của danh sách từ người vận hành nhập độ dài_hint:demoList = ["Python", 1, "JavaScript", True, "HTML", "CSS", 22]
sizeOfDemoList = length_hint[demoList]
print["The length of the list using the length_hint[] method is: " + str[sizeOfDemoList]]
# The length of the list using the length_hint[] method is: 7
Suy nghĩ cuối cùng
Bài viết này chỉ cho bạn cách có được kích thước của một danh sách với 3 phương pháp khác nhau: A cho vòng lặp, hàm
counts=[0]*max[c]
8 và hàm for i in range[len[c]]:
counts[c[i]-1]+=1
0 từ mô -đun toán tử.Bạn có thể tự hỏi nên sử dụng giữa 3 phương pháp này.
Tôi sẽ khuyên bạn nên sử dụng
counts=[0]*max[c]
8 vì bạn không cần phải làm nhiều việc để sử dụng nó so với Loop và for i in range[len[c]]:
counts[c[i]-1]+=1
0.Ngoài ra,
counts=[0]*max[c]
8 dường như nhanh hơn cả vòng lặp và for i in range[len[c]]:
counts[c[i]-1]+=1
0.Nếu bạn thấy bài viết này hữu ích, hãy chia sẻ nó để nó có thể tiếp cận những người cần nó.
Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu