Hướng dẫn sum of positive codewars python - tổng số trăn mật mã tích cực

Permalink

Không thể lấy lại những người đóng góp tại thời điểm này

Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều

defpositive_sum (mảng): positive_sum(arr):
'' 'Trả lại tổng của các số dương' ''
total=0 = 0
Fornuminarr: num in arr:
ifnum> 0: num > 0:
total=total+num = total + num
returntotal total

Chek Kata trên CodeWarsCodewars

Description:

You get an array of numbers, return the sum of all of the positives ones.

Example [1,-4,7,12] => 1 + 7 + 12 = 20

Note: if there is nothing to sum, the sum is default to 0.

Giải pháp 1

Hãy sử dụng phương pháp reduce để giải quyết nhiệm vụ này. Nó thực thi hàm giảm (mà bạn cung cấp) trên mỗi phần tử của mảng, dẫn đến giá trị đầu ra đơn. Nó gần như là một ví dụ trong sách giáo khoa cho giảm thiểu.

import functools

def positive_sum(arr):
    return functools.reduce(lambda accumulator, current: accumulator + (current if current > 0 else 0), arr, 0)

Giải pháp 2

Một cách tiếp cận khác sẽ là lặp qua mảng và tổng tất cả các số dương.

def positive_sum(arr):
    sum = 0
    for number in arr:
        if number > 0:
            sum += number
    return sum

Giải pháp 3

Hoặc sử dụng sum(). Đây là một hàm sẵn có trong Python thêm tất cả các yếu tố trong danh sách, đặt và bộ dữ liệu và trả về giá trị.

def positive_sum(arr):
    return sum(number for number in arr if number > 0)

  • Đăng ký

    Thời gian để nhận được danh dự của bạn

  • Tập huấn
  • Thực tiễn

    Hoàn thành thách thức Kata để kiếm được danh dự và cấp bậc. Hãy đào tạo lại để trau dồi kỹ thuậtKata to earn honor and ranks. Re-train to hone technique

  • Freestyle sparring

    Thay phiên nhau phối lại và tái cấu trúc mã người khác thông qua KumiteKumite

  • Sự nghiệp
  • Những cơ hội

    Tìm thử thách nghề nghiệp tiếp theo của bạn - được cung cấp bởi các công việc đủ điều kiệnQualified Jobs

  • Cộng đồng
  • Bảng xếp hạng

    Đạt được danh dự và tiến lên bảng xếp hạng toàn cầu

  • Trò chuyện

    Tham gia máy chủ Discord của chúng tôi và trò chuyện với các chiến binh mã đồng nghiệp của bạnDiscord server and chat with your fellow code warriors

  • Thảo luận

    Xem Hội đồng Thảo luận GitHub của chúng tôi để thảo luận về các chủ đề CodeWars chungGithub Discussions board to discuss general Codewars topics

  • Về
  • Tài liệu

    Tìm hiểu về tất cả các khía cạnh khác nhau của các mã hóa

Tổng của tích cực

  • Thông tin chi tiết
  • Các giải pháp
  • Bài giảng (219)

Description:

Tải mô tả ...

Kata tương tự:

Stats:

TạoNgày 19 tháng 4 năm 2016
Được phát hànhNgày 19 tháng 4 năm 2016
Được phát hành236180
Chiến binh được đào tạo9787
Tổng số bỏ qua427248
Tổng số thời gian hoàn thành187442
Hoàn thành JavaScript78955
Hoàn thành Python51897
Hoàn thành Ruby5556
C# Hoàn thành10891
Hoàn thành CoffeeScript58
Hoàn thành Haskell1631
C Hoàn thành4358
Hoàn thành bản thảo1885
Hoàn thành PHP4414
Hoàn thành C ++6976
Đi hoàn thành3329
Hoàn thành Java16512
Hoàn thành Elixir416
Hoàn thành nasm79
Hoàn thành pha lê35
Hoàn thành Groovy95
Hoàn thành Scala631
Kotlin hoàn thành1544
Hoàn thành OCAML120
Hoàn thành nhanh chóng2205
Hoàn thành rỉ sét1528
Hoàn thành vợt70
Julia hoàn thành87
Hoàn thành PowerShell311
Lý do hoàn thành12
Hoàn thành phi tiêu796
Lua hoàn thành287
Hoàn thành Clojure172
Hoàn thành yếu tố15
R hoàn thành105
Hoàn thành COBOL10
D Hoàn thành12
Hoàn thành RISC-V10
Tổng số sao1369

% phiếu bầu với xếp hạng phản hồi tích cực 93% của 16259
Tổng số phiếu bầu "rất hài lòng" 14060
Tổng số phiếu bầu "có phần hài lòng" 2006
Tổng số phiếu bầu "không hài lòng" 193