- eof đại diện cho lỗi câu lệnh nào trong python?
- Trình tự liên quan đến câu lệnh for trong python
- Có phải nếu một câu lệnh vòng lặp trong python?
- câu lệnh if và không có trong python
Transform() có thể áp dụng một hàm cho các phần tử của một chuỗi và lưu giá trị được hàm này trả về vào một chuỗi khác. Trình vòng lặp nó trả về các điểm đến vị trí bên cạnh phần tử cuối cùng được lưu trong chuỗi đầu ra.
Có một phiên bản của thuật toán này tương tự như for_each() áp dụng hàm đơn nguyên cho một chuỗi các phần tử để thay đổi giá trị của chúng, nhưng có một sự khác biệt lớn. Kiểu trả về của hàm được sử dụng trong for_each() phải là void và giá trị trong chuỗi đầu vào có thể được sửa đổi thông qua tham số tham chiếu của hàm này trong khi hàm nhị phân của Transform() phải trả về một giá trị và cũng có thể là giá trị đó; được sử dụng sau khi áp dụng chức năng. Kết quả thu được sẽ được lưu vào một chuỗi khác.
Không chỉ vậy, các loại phần tử trong chuỗi đầu ra có thể khác với các loại phần tử trong chuỗi đầu vào. Với for_each(), hàm sẽ luôn được áp dụng cho các phần tử của chuỗi, nhưng với Transform(), điều này không được đảm bảo.
Phiên bản thứ hai của Transform() cho phép bạn áp dụng các hàm nhị phân cho các phần tử tương ứng của hai chuỗi, nhưng trước tiên hãy xem cách áp dụng các hàm đơn nhất cho các chuỗi. Trong phiên bản thuật toán này, hai tham số đầu tiên của nó là các trình lặp đầu vào xác định chuỗi đầu vào, tham số thứ ba là trình lặp đầu ra cho phần tử đầu tiên tại đích và tham số thứ tư là hàm nhị phân. Hàm này phải chấp nhận một phần tử từ chuỗi đầu vào làm đối số và phải trả về một giá trị có thể được lưu trong chuỗi đầu ra. Ví dụ:
std::vectorThuật toán Transform() sẽ chuyển đổi nhiệt độ độ C trong vùng chứa deg_C thành Fahrenheit và lưu kết quả vào vùng chứa deg_F. Để lưu tất cả kết quả, deg_F được tạo yêu cầu một số phần tử nhất định. Do đó, tham số thứ ba là trình vòng lặp bắt đầu của deg_F. Bằng cách sử dụng back_insert_iterator làm đối số thứ ba cho Transform(), bạn có thể lưu kết quả vào vùng chứa trống:deg_C {21.0, 30.5, 0.0, 3.2, 100.0}; std::vector deg_F(deg_C.size()); ::end(deg_C), std:rbegin(deg_F),[](double temp){ return 32.0 + 9.0*temp/5.0 });
std::vectorSử dụng back_insert_iterator để tạo một phần tử trong deg_F chứa kết quả của phép toán; Tham số thứ ba có thể là một trình vòng lặp trỏ đến các phần tử của vùng chứa đầu vào. Ví dụ:deg_F; // Vùng chứa trống std::transform(std::begin(deg_C), std::end(deg_C),std::back_inserter(deg_F),[](double temp){ return 32,0 + 9,0* tạm thời/5,0 }); // Kết quả 69,8 86,9 32 37,76 212
std::vectorĐiều này chuyển đổi giá trị trong vùng chứa nhiệt độ từ độ C sang độ F. Tham số thứ ba là trình vòng lặp bắt đầu của chuỗi đầu vào. Kết quả của việc áp dụng hàm được chỉ định bởi tham số thứ tư sẽ được lưu trở lại phần tử mà nó được áp dụng.nhiệt độ {21.0, 30.5, 0.0, 3.2, 100.0}; // Ở độ C std::transform(std::begin (temps), std::end(temps), std::begin( nhiệt độ),[](nhiệt độ gấp đôi){ trả về 32,0 + 9,0* nhiệt độ / 5,0; }); // Kết quả 69,8 86,9 32 37,76 212
std::vectorChuỗi đầu vào chứa các đối tượng chuỗi và hàm được áp dụng cho các phần tử là đối tượng hàm băm tiêu chuẩn được xác định trong tệp tiêu đề chuỗi. Hàm băm này sẽ trả về các giá trị băm thuộc loại size_t và sẽ lưu các giá trị này vào vùng chứa hash_values bằng cách sử dụng back_insert_iterator được trả về bởi hàm phụ trợ back_inserter() được xác định trong tệp tiêu đề iterator. Trên hệ thống của tôi, mã này tạo ra kết quả đầu ra sau:từ {"một", "hai", "ba", "bốn","năm"}; std::vector hash_values; ), std::end(words),std::back_inserter(hash_values),std::hash ()); // hàm băm chuỗi std::copy(std::begin(hash_values), std::end(hash_values),std::ostream_iterator {std::cout," "}); std::cout << std::endl;
3123124719 3190065193 2290484163 795473317 2931049365
Hệ thống của bạn có thể tạo ra đầu ra khác nhau. Lưu ý rằng vì trình tự đích được chỉ định bởi đối tượng back_insert_iterator nên thuật toán Transform() ở đây sẽ trả về một trình vòng lặp kiểu back_insert_iterator<>std::vectorBây giờ, Transform() trả về trình vòng lặp cuối cùng của chuỗi các phần tử trong vùng chứa hash_values.từ {"một", "hai", "ba", "bốn", "năm"}; std::vector hash_values(words.size()); ::transform(std::begin(words),std::end(words), std::begin(hash_values), std::hash ()); // hàm băm chuỗi std::copy(std::begin(hash_values) , end_iter, std::ostream iterator {std::cout," "}) ; std::cout << std::endl;
std::dequeThuật toán Transform() áp dụng hàm được xác định bởi lambda cho các phần tử trong vùng chứa tên. Biểu thức lambda này gọi Transform(), áp dụng hàm toupper() được xác định trong tệp tiêu đề cctype cho từng ký tự của chuỗi được truyền tới nó. Nó chuyển đổi từng phần tử trong tên thành chữ hoa, do đó kết quả đầu ra là:tên {"Srám nắng Laurel", "Oliver Hardy", "Harold Lloyd"}; std::transform(std::begin(names), std::end(names), std::begin(names),[](string& s) { std::transform(std::begin(s), std::end(s), std::begin(s), ::người cao hơn);return s;}); std::copy(std::begin(names), std::end(names), std::ostream iterator {std::cout," "}); :cout << std::endl;
STAN LAUREL OLIVER HARDY HAROLD LLOYD
Tất nhiên, có nhiều cách khác đơn giản hơn để có được kết quả tương tự.bạntội lỗig Point = std::pairCó 7 điểm ở đây, vậy vật thể lục giác trong Hình 1 có 6 đoạn đa tuyến. Vì điểm đầu và điểm cuối giống nhau nên 6 đoạn thẳng này thực chất tạo thành một đa giác - hình lục giác. Độ dài của các đoạn này có thể được tính bằng thuật toán Transform():; // pair xác định một điểm
std::vectorChuỗi đầu vào đầu tiên của Transform() chứa các đối tượng Point từ đầu đến cuối trong hình lục giác. Chuỗi đầu vào thứ hai bắt đầu với đối tượng Point thứ hai, do đó, các đối số liên tiếp cho lệnh gọi hàm nhị phân này là điểm 1 và 2, điểm 2 và 3, điểm 3 và 4, v.v. cho đến hai điểm cuối cùng của chuỗi đầu vào. 6 và 7. Hình 1 thể hiện công thức tính khoảng cách giữa hai điểm (x1, y1) và (x2, y2). Biểu thức lambda là tham số cuối cùng của Transform() thực hiện công thức này. Độ dài của các đoạn đường được tính bằng biểu thức lambda và chúng được lưu trữ trong vùng chứa đoạn. Chúng ta có thể sử dụng nhiều hơn hai thuật toán để xuất ra độ dài của đoạn thẳng và chu vi của hình lục giác. Ví dụ:lục giác {{1,2}, {2,1}, {3,1}, {4,2}, {3,3}, {2,3}, {1,2} }; std::vector đoạn; // Lưu trữ độ dài của đoạn std::transform (std::begin (hexagon),std::end(hexagon) — 1, std::begin (hình lục giác) + 1, std::back_inserter(phân đoạn),[](const Điểm p1, const Điểm p2){return st d::sqrt((p1.first-p2.first)*(p1.first-p2. đầu tiên) +(p1.second - p2.second)*(p1.second - p2.second) });
std::cout << "Độ dài đoạn: "; std::copy(std::begin(segments), std::end(segments),std::ostream_iteratorThuật toán copy() được sử dụng ở đây để xuất ra độ dài của đoạn đường. Hàm tích lũy () có thể tính tổng các giá trị phần tử trong các phân đoạn để thu được chu vi.{std::cout," "}) ; std::cout << std::endl; std::cout << "Chu vi hình lục giác: "<< std::accumulate(std::begin(segments), std::end(segments), 0.0) << std::endl;
Tôi đang thực hiện một bài hướng dẫn về Code Academy và ở đây tôi gặp lỗi với nội dung "Có vẻ như chức năng của bạn không trả về 'Than ôi, bạn không đủ điều kiện nhận thẻ tín dụng. Chủ nghĩa tư bản tàn nhẫn như vậy.'" khi tham số thu nhập là 75 . ” nhưng chuỗi được trả về trong bảng điều khiển (vì lý do nào đó
Tôi đang đọc hướng dẫn chính thức của Go nhưng gặp khó khăn trong việc hiểu sự khác biệt giữa Kênh và Kênh đệm. Liên kết tới hướng dẫn là https://tour.golang.org/concurrency/2 và
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi hy vọng câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập
đóng cửa. Câu hỏi này lạc đề. Hiện tại nó không chấp nhận câu trả lời. Bạn muốn cải thiện câu hỏi này? Đã cập nhật câu hỏi để nó phù hợp với chủ đề về Stack Overflow. Đóng cửa 9 năm trước Cải thiện hàng đợi này
Đã đóng cửa. Câu hỏi này không tuân thủ nguyên tắc Stack Overflow. Câu trả lời không được chấp nhận vào thời điểm này. Các câu hỏi yêu cầu chúng tôi giới thiệu hoặc tìm các công cụ, thư viện hoặc tài nguyên bên ngoài trang web yêu thích đều không có chủ đề đối với Stack Overflow vì
Là người mới sử dụng iOS, có rất nhiều sách có sẵn để đáp ứng nhu cầu tìm hiểu những điều cơ bản của bạn. Bây giờ, tôi muốn chuyển sang một số cách đọc nâng cao, chẳng hạn như OAuth và SQLite cũng như các TableView có nguồn gốc API động, v.v. Có tài nguyên nào bạn có thể giới thiệu không? tối ưu
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi hy vọng câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập
đóng cửa. Câu hỏi này dựa trên ý kiến. Hiện tại nó không chấp nhận câu trả lời. Bạn muốn cải thiện câu hỏi này? Cập nhật câu hỏi để việc chỉnh sửa bài đăng này có thể trả lời nó bằng các sự kiện và trích dẫn. Đã đóng 8 năm trước. Cải thiện
đóng cửa. Câu hỏi này không tuân thủ các nguyên tắc của Stack Overflow. Hiện tại nó không chấp nhận câu trả lời. Chúng tôi không cho phép các câu hỏi tìm kiếm đề xuất về sách, công cụ, thư viện phần mềm, v.v. Bạn có thể chỉnh sửa câu hỏi của mình để trả lời bằng sự kiện và trích dẫn. Đóng cửa 8 năm trước
Lời nói đầu Nhiều học sinh biết rằng ngoài phần thi giải quyết vấn đề trong các cuộc thi CTF thông thường của chúng ta, còn có một hệ thống thi đấu tên là hệ thống thi đấu AWD. Ở định dạng này, nhóm của chúng tôi sẽ có một hoặc nhiều máy chủ. Phương thức kết nối máy chủ thường là liên kết SSH và một nhóm có thể có
Memcached là hệ thống bộ đệm khóa-giá trị bộ nhớ phân tán, miễn phí và mã nguồn mở, hiệu suất cao. Memcached là bộ lưu trữ khóa-giá trị dựa trên bộ nhớ được sử dụng để lưu trữ các mẩu dữ liệu nhỏ tùy ý (chuỗi, đối tượng). Gọi, A
Perl, còn được gọi là Ngôn ngữ trích xuất và báo cáo thực tế, là tên viết tắt của Ngôn ngữ trích xuất và báo cáo thực tế Perl được tạo ra bởi Larry Wall vào năm 1919.
WSDL là tên viết tắt của Ngôn ngữ mô tả dịch vụ web. Được dịch sang tiếng Trung Quốc, nó là Ngôn ngữ mô tả dịch vụ web. WSDL là ngôn ngữ dựa trên XML được sử dụng để mô tả các dịch vụ web và dịch vụ web.
đóng cửa. Câu hỏi này không đáp ứng các nguyên tắc của Stack Overflow. Hiện tại nó không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Câu hỏi được cập nhật để làm cho câu hỏi trở thành chủ đề cho Stack Overflow. Đóng cửa 6 năm trước Cải thiện điều này
Tôi đang tìm hướng dẫn giải thích cách tạo điều khiển người dùng tùy chỉnh trong WPF. Tôi muốn một điều khiển kết hợp khối văn bản, hộp văn bản và nút khởi chạy hộp thoại mở tệp chung. Tôi đã hoàn thành việc bố trí và mọi thứ đã được kết nối. Nó hoạt động, nhưng đó là ba
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi hy vọng câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập
Tôi đã xem các phiếu bầu ở gần đầu trang thứ tư của hướng dẫn Django và kết quả trông như thế này: # Luôn trả lại HttpResponseRedirect a
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi hy vọng câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập
Có hướng dẫn Qt QSS hay nào hay ở đâu đó tôi có thể xem ví dụ về các tiện ích được tạo kiểu không? Tôi muốn một số trích dẫn đầy đủ nếu có ở đâu đó. Tôi không thể tìm thấy gì khác ngoài một hướng dẫn nhỏ về cách tạo kiểu cho các nút hoặc một số tab. Câu trả lời hay nhấtQt
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi mong đợi câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc kiến thức chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập trang
Tôi là một lập trình viên xuất sắc, rất giỏi!