Freecodecamp: рднрд╡рд┐рд╖реНрдп рдХреЗ рдЕрдЬрдЧрд░ рдкрд╛рдареНрдпрдХреНрд░рдо [рдЪрд░реНрдЪрд╛]

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рдЕрдкреНрд░реИрд▓ 2017  ┬╖  56рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: freeCodeCamp/freeCodeCamp

рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо

рдпрд╣ рдореБрджреНрджрд╛ рднрд╡рд┐рд╖реНрдп рдХреЗ рдПрдлрд╕реАрд╕реА рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо рдХреА рдпреЛрдЬрдирд╛ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд╕реВрддреНрд░ рд╣реЛрдЧрд╛ред

REPL.it рдХрдХреНрд╖рд╛ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ https://github.com/freeCodeCamp/freeCodeCamp/issues/14736 рдкрд░

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдо рдПрдХ iframe Repl.it рд╡рд┐рдЬреЗрдЯ рдкрд░ рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдкрд╛рдпрдерди рдЯреЗрд╕реНрдЯ рд╕реВрдЯ рдЪрд▓рд╛рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдореЗрдВ рд╡рд╣ рдХрд╛рдо рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ рддреЛ рд╣рдо рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВрдЧреЗред рдпрджрд┐ рдЖрдк рдПрдлрд╕реАрд╕реА рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдЗрд╕ рднрд╛рдЧ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдЖрдк рдХреЛ (рдПрдерди рдПрд░реЛрд╡реБрдб) рдЧрдЯрд░ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдпрд╛ рдиреАрдЪреЗ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВред

рдХреГрдкрдпрд╛ рд╕рдВрд╕реНрдХрд░рдг 3.6 рдореЗрдВ рд╕рднреА рдкрд╛рдпрдерди рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдВ



FCC рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рд╕рдВрд░рдЪрдирд╛ рд╣реИ: рд╢реБрд░реБрдЖрддреА рдЦрдВрдб, рдордзреНрдпрд╡рд░реНрддреА рдЕрдиреБрднрд╛рдЧ, рдФрд░ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд╖рдп рдЕрдиреБрднрд╛рдЧред

рд╢реБрд░реБрдЖрддреА рдЦрдВрдб:

  • [] рдкрд╛рдпрдерди рдХрд╛ рдкрд░рд┐рдЪрдп
  • [] рдЖрдЙрдЯрдкреБрдЯ

    • рдЫрд╛рдк

    • рд╡рд░реНрдг рд╕реЗ рдмрдЪреЛ

    • рдЗрдирдкреБрдЯ

  • [ ] рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдкреНрд░рдХрд╛рд░

    • рдЗрдВрдЯреЗрдЧрд░, рдлреНрд▓реЛрдЯреНрд╕

    • рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕

    • tuples

    • рд╕реВрдЪрд┐рдпреЛрдВ

    • рд╕реЗрдЯ

    • рд╢рдмреНрджрдХреЛрд╢реЛрдВ

  • [] рд╕рдВрдЪрд╛рд▓рдХ

    • +, -, /, /,%, *

    • <,>, <=,> =, ==; =!

    • =

    • рд╕рдЪ, рдЧрд▓рдд, рдФрд░, рдпрд╛, рдирд╣реАрдВ

    • рдореЗрдВ, рдЕрдВрджрд░ рдирд╣реАрдВ

    • рд╣реИ рдпрд╛ рдирд╣реА рдпрд╣

  • [x] рдЧрдгрд┐рдд - @bgroveben

    • рдЬреЛрдбрд╝реЗрдВ, рдШрдЯрд╛рдирд╛, рдЧреБрдгрд╛, рднрд╛рдЧ рдХрд░реЗрдВ

    • рдкрд╛рд╡рд░, sqrt (), abs (), рд░рд╛рдЙрдВрдб (), рдпреЛрдЧ (), рдЕрдзрд┐рдХрддрдо (), рдорд┐рдирдЯ ()

  • [ ] рдЪрд░
  • [] рд╕рд╢рд░реНрдд

    • рдпрджрд┐, рдПрд▓рд┐рдл, рдФрд░

  • [] рд▓реВрдкреНрд╕

    • рдЬрдмрдХрд┐, (рд░реЗрдВрдЬ рдореЗрдВ), рдХреЗ рд▓рд┐рдП (рд╕реВрдЪреА рдореЗрдВ), рдХреЗ рд▓рд┐рдП (рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ)

  • [] рдХрд╛рд░реНрдп
  • [] рдХрдХреНрд╖рд╛рдПрдВ

рдордзреНрдпрд╡рд░реНрддреА рдЕрдиреБрднрд╛рдЧ:

  • [] рдлрд╝рд╛рдЗрд▓ I / O
  • [] Iterators рдФрд░ рдЬреЗрдирд░реЗрдЯрд░
  • [x] рд▓рд╛рдореНрдмрд╛ - @robbiemu
  • [] рд╕рд╢рд░реНрдд
  • [] рдУрдУрдкреА
  • [] рдореЙрдбреНрдпреВрд▓, рдкреБрд╕реНрддрдХрд╛рд▓рдп, рдкреИрдХреЗрдЬ
  • [] рдлрд╛рдЗрд▓ рдФрд░ рдПрд░рд░ рд╣реИрдВрдбрд▓рд┐рдВрдЧ
  • [] рдЙрдиреНрдирдд рд╡рд╕реНрддреБрдУрдВ рдФрд░ рдбреЗрдЯрд╛рдЯрд╛рдЗрдкреНрд╕
  • [] рдкреНрд░рд┐рдВрдЯ рд╕реНрд╡рд░реВрдкрдг
  • [] рд╕реВрдЪреА рдХреА рд╕рдордЭ
  • [] рд╕рдЬреНрдЬрд╛рдХрд╛рд░

рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд╖рдп рдЕрдиреБрднрд╛рдЧ:

  • [ ] рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ
  • [ ] рдЦреЗрд▓ рдХрд╛ рд╡рд┐рдХрд╛рд╕
  • [] рд╡реЗрдмреНрд╕рдХреНрд░реИрдкрд┐рдВрдЧ (рд╕реБрдВрджрд░рд╕реБрдк)
  • [] рдЬреАрдЖрдИрдПрд╕ (рдХреИрдЯрд▓реЙрдЧ / рдлреЛрд▓рд┐рдпрдо)
  • [] рдлреНрд▓рд╛рд╕реНрдХ / Django (рдПрдХ рдирд╣реАрдВ рджреЛрдиреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░)
  • [] рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдкрд╛рдВрдбрд╛ / Numpy)
  • [] рдбреЗрдЯрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди (рдЯреВрдЯ)
  • [] рдЬреАрдпреВрдЖрдИ (рдЯреАрдХрдВрдЯрд░)
  • [] рдЬрд┐рдпреЛрдХреЛрдбрд┐рдВрдЧ (рдЬрд┐рдУрдкреА)
  • [] рдкреНрд░рд╛рдХреГрддрд┐рдХ рднрд╛рд╖рд╛ рдЯреВрд▓рдХрд┐рдЯ (рдПрдирдПрд▓рдЯреАрдХреЗ)

рдПрдХ рдЕрдиреБрднрд╛рдЧ рд╕рдмрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдЪрд╛рд░ рд╣реИ?

рдиреАрдЪреЗ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдФрд░ рдХреГрдкрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдХреНрдпреЛрдВред

рд╕рдмрдХ рдХреЗ рд▓рд┐рдП рдкрд╛рдареНрдпрдХреНрд░рдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╡рд░рдг рдиреАрдЪреЗ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ:

  • рд╢реАрд░реНрд╖рдХ
  • рд╡рд┐рд╡рд░рдг / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ
  • рдХреЛрдб рдкреНрд░реЙрдореНрдкреНрдЯ / рдЪреБрдиреМрддреА
  • рдкрд╣рд▓реЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб
  • рдЙрдкрд╛рдп
  • рдкрд░реАрдХреНрд╖рдг

рдореМрдЬреВрджрд╛ рдкрд╛рда рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЕрдкрдбреЗрдЯ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдХрд┐ рдЖрдк рджрд┐рдП рдЧрдП рдмрджрд▓рд╛рд╡ рдХреНрдпреЛрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред



рдЬрд▓реНрдж рдЖ рд░рд╣рд╛ рд╣реИ

-

рдкрд╛рдпрдерди рдЪреИрд▓реЗрдВрдЬ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреИрд╕реЗ рдХрд░реЗрдВ

https://github.com/freeCodeCamp/freeCodeCamp/tree/feature/python-challenges

рдЕрдЬрдЧрд░ рдЪреБрдиреМрддреА рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣реЗ рджреЛрд╕реНрддреЛрдВ, рдореИрдВ Repl.it рдХрд╛ рд╕рдВрд╕реНрдерд╛рдкрдХ / ceo рд╣реВрдВред FCC рд╣рдорд╛рд░реЗ рджрд┐рд▓реЛрдВ рдХреЗ рдирдЬрд╝рджреАрдХ рдФрд░ рдкреНрд░рд┐рдп рд╣реИ рдЗрд╕рд▓рд┐рдП рд╣рдо рдЬреЛ рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд╣рдо рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рдпрд╣рд╛рдБ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХреЗрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП Repl.it рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдореБрдЦ рдмрд╛рдзрд╛рдПрдВ рдХреНрдпрд╛ рд╣реИрдВ?

рд╕рднреА 56 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣рд╛рдБ рд╣рдо рдХреНрдпрд╛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ ::
рд╢реБрд░реБрдЖрддреА

  • рд╕рд╢рд░реНрдд,

рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ:

  • Iterators рдФрд░ рдЬреЗрдирд░реЗрдЯрд░
  • рд▓реИрдореНрдмреНрдбрд╛
  • рд╕рд╢рд░реНрдд,
  • OOP
  • рдореЙрдбреНрдпреВрд▓, рдкреБрд╕реНрддрдХрд╛рд▓рдп, рдкреИрдХреЗрдЬ
  • рдлрд╝рд╛рдЗрд▓ рдФрд░ рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ
  • рдЙрдиреНрдирдд рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ рдбреЗрдЯрд╛рдЯрд╛рдЗрдкреНрд╕
  • рдореБрджреНрд░рдг рд╕реНрд╡рд░реВрдкрдг

рдЙрдиреНрдирдд:

  • рд╡реЗрдмреНрд╕рдХреНрд░реИрдкрд┐рдВрдЧ (рдмреНрдпреВрдЯреАрд╕реВрдк)
  • рдЬреАрдЖрдИрдПрд╕ (USC / рдлреЛрд▓рд┐рдпрдо)
  • рдлреНрд▓рд╛рд╕реНрдХ / Django (рдореИрдВ Django рдХреА рдУрд░ рдЕрдзрд┐рдХ рдЭреБрдХрд╛рд╡ рд╣реЛрдЧрд╛)
  • рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдкрд╛рдВрдбрд╛ / Numpy)
  • рдбреЗрдЯрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди (рдЯреВрдЯ)
  • рдЬреАрдпреВрдЖрдИ (рдЯрдВрдХрдЯрд░)
  • рдЬрд┐рдпреЛрдХреЛрдбрд┐рдВрдЧ (рдЬрд┐рдУрдкреА)

@mstellaluna рдЖрдкрдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╢реБрд░реБрдЖрддреА рд╕рд╢рд░реНрдд рдЕрдиреБрднрд╛рдЧ рдФрд░ рдордзреНрдпрд╡рд░реНрддреА рд╕рд╢рд░реНрдд рдЕрдиреБрднрд╛рдЧ рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реЛрдЧрд╛?

@ рдореЗрд░реЗ рд▓рд┐рдП рдПрдерди-рдПрд░реЛрд╡реБрдб рдореВрд▓ рдмрд╛рддреЗрдВ рд╕рд┐рд░реНрдл рдиреНрдпреВрдирддрдо рдЬреНрдЮрд╛рди (рдпрджрд┐, рдФрд░, рдХреЗ рд▓рд┐рдП, рдЬреЛ) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдореЗрдВ "рд╕рд╢рд░реНрдд" рдХреЗ рд▓рд┐рдП рдореЗрд░реА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдпрд╛ рдЯрд░реНрдирд░реА рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╢рд░реНрдд рд╣реЛрдЧреАред рдкреНрд░рд┐рдВрдЯ рдлреЙрд░реНрдореЗрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдмрд╛рдд .. рдмреЗрд╕рд┐рдХ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░рд┐рдВрдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╣реЛрдЧрд╛ рдЬрдмрдХрд┐ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рд╣рдо рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕,% s рдХреЗ рд╕рд╛рде рдкреНрд░рд┐рдВрдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред ред рдЖрджрд┐

рдХрд╕реНрдЯрдо рдХреНрд▓рд╛рд╕рд░реВрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Repl.it рдореЗрдВ рдирдпрд╛ рдХреНрд╖реЗрддреНрд░ рд╣реИред рдЖрдк рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрд▓рд╛рд╕рд░реВрдо рдХреА рдкреНрд░рддрд┐рдХреГрддрд┐
https://repl.it/site/classrooms

рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рд╕реВрдЪреА
https://repl.it/community

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдмреЗрд╕рд┐рдХ, рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдФрд░ рдПрдбрд╡рд╛рдВрд╕реНрдб рдЕрд▓реНрдЧреЛрд░рд┐рдердо рд╕реЗрдХреНрд╢рди рдХреЛ рдЬреЛрдбрд╝рдирд╛ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдлрд╕реАрд╕реА рдлреНрд░рдВрдЯ рдПрдВрдб рдХреЗ рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд╕рдорд╛рди)ред

рдореИрдВрдиреЗ рджрд┐рдП рдЧрдП FCC-Python-Variable-Challenge рдЙрджрд╛рд╣рд░рдг рдХреЛ рджреЗрдЦрд╛ рд╣реИ, рдФрд░ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдЪреБрдиреМрддреА рд╕реЗ 'рдкреВрд░реНрд╡рд╛рдкреЗрдХреНрд╖рд╛рдУрдВ' рдХреЗ рдЬреНрдЮрд╛рди рдХреА рдереЛрдбрд╝реА рдмрд╣реБрдд рдЙрдореНрдореАрдж рд╣реИред рдЬреИрд╕реЗ рдХрд┐ рдЯреВрд░рд┐рд╕реНрдЯ рдХреЛ рдкрд╣рд▓реЗ рдЪрд░ рдХреЗ рд▓рд┐рдП рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЪрд░ рдЪреБрдиреМрддреА рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд░рдг / рд╡реНрдпрд╛рдЦреНрдпрд╛ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рддреА рд╣реИ рдХрд┐ рдЪрд░ рдХреНрдпрд╛ рд╣реИрдВред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рд╡рд┐рдкрд░реАрдд,

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ - рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл рдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП - рдХреНрдпрд╛ рд╣рдо рдпрд╣ рдорд╛рдирдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВ рдХрд┐ рдЯреВрд░рд┐рд╕реНрдЯ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣рд╛ рд╣реИ?

@jamesperrin рд╣рд╛рдВ рд╣рдордиреЗ рдЙрд╕ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ FCC рдХреА рд╕рд╛рдЗрдЯ рдкрд░ рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝реЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд░рд┐рдкреНрд▓реЗ рдХреНрд▓рд╛рд╕рд░реВрдо рдХреЗ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рд╣реИред

@ U- рддрд░реАрдХреЗ рд╣рд╛рдБ рдЬреЛ рдореЗрд░реА рдЧрд▓рддреА рдереАред рд▓рдХреНрд╖реНрдп рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рдкрд╛рдареНрдпрдХреНрд░рдо рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╣реЛрдЧрд╛ (рдЬреЗрдПрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддрд░рд╣)ред рдЗрд╕ рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж :)

@AnikaErceg рдпреЗ рдорд╣рд╛рди рдЕрднреНрдпрд╛рд╕ рдЦрдВрдб рд╣реЛрдВрдЧреЗред рдЗрд╕реЗ рдЬрд░реВрд░ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗрдВрдЧреЗред рдзрдиреНрдпрд╡рд╛рдж!

@ рдПрдерди-рдПрд░реЛрд╡реБрдб рдЖрдк рдкреНрд░рд╛рдХреГрддрд┐рдХ рднрд╛рд╖рд╛ рдЯреВрд▓рдХрд┐рдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рд╕реВрдЪреА рдХреЛ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рджрд┐рдпрд╛

рдЙрдиреНрдирдд рдХреЗ рддрд╣рдд рд╕рдЬреНрдЬрд╛рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрджрд░реНрдн рдкреНрд░рдмрдВрдзрдХ рдлрд╝рд╛рдЗрд▓ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рдЖрдПрдВрдЧреЗ?

@ t3h2mas рдореИрдВрдиреЗ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдХреЗ рддрд╣рдд рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рд▓рдЧрд╛рдПред

рдЕрдЧрд░ рдЖрдкрдиреЗ for (in list) рдЬреЛрдбрд╝рд╛, рддреЛ рд╢рд╛рдпрдж рдЖрдк for (in string) рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ?
рд╕рд╛рде рд╣реА, in рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдПрдХ рдкрд░рд┐рдЪрдп рднреА рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдЬреАрд╡рди рдЖрд╕рд╛рди рдкрд╛рдпрд╛ рдЬрдм рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ for рд▓реВрдкреНрд╕: рд╕реНрдорд╛рдЗрд▓реА:) рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИред

@AnikaErceg рдЕрдЪреНрдЫрд╛ рд╕реБрдЭрд╛рд╡ред рдХрд┐рдпрд╛ рд╣реБрдЖред рдореИрдВрдиреЗ рдЬреЛрдбрд╝рд╛ рд╣реИ рдФрд░ рд╕рд╛рде рд╣реА рдирд╣реАрдВ рд╣реИред

@ginoskotheon рдЖрдк рд▓реВрдк рдХреЗ рддрд╣рдд for (in string) рдЬреЛрдбрд╝рдирд╛ рднреВрд▓ рдЧрдП рдпрд╛ рдЖрдкрдиреЗ рдЙрд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рджреЗрдЦрд╛? :рд╕реНрдорд╛рдЗрд▓реА:

рдореИрдВ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рд╣реВрдВ рдЬреЛ рдкрд╣рд▓реА рднрд╛рд╖рд╛ рдкрд╛рдпрдерди рдерд╛ ... рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдПрдлрд╕реАрд╕реА рдЕрдзреНрдпрд╛рдп рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрдпреЛрдЬрдХ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рдореИрдВ рдирдП рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд╕рд╛рде рд╕рд╣рд╛рдпрддрд╛ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдореИрдВ 100% рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпреЛрдЧрджрд╛рди рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдореИрдВ рдкрд╛рдЗрдерди рд╕рдореБрджрд╛рдп рдореЗрдВ рднреА рдХрд╛рдлреА рд╕рдХреНрд░рд┐рдп рд╣реВрдВ, рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рдФрд░ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдЬреНрдЮрд╛рдирд╡рд░реНрдзрдХ рдЖрдВрдЦреЗрдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИрдВред

рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд╕реБрдЭрд╛рд╡:

  • [] рд╕рднреА рдЙрджрд╛рд╣рд░рдг рдкреАрдИрдкреА 8 рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ
  • [] рдмреВрд▓рд┐рдпрди рд╕рдмрдХ 'рдбреЗрдЯрд╛рдЯрд╛рдЗрдкреНрд╕' рдореЗрдВ 'рд╕рддреНрдп' рдФрд░ 'рдорд┐рдереНрдпрд╛' рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
  • [] рдХреБрдЫ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП ( itertools , collections )
  • [] рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ( requests , scrapy , рдЖрджрд┐)
  • [] рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ 'рдЖрдЙрдЯрдкреБрдЯ' рдореЗрдВ 'рдПрд╕реНрдХреЗрдк рд╕реАрдХреНрд╡реЗрдВрд╕' рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ %s рд╕реНрдЯреНрд░реАрдВрдЧ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ .... рддреЛ рдЫреЛрдбрд╝ рджреЗрдВ рдХрд┐ 'рд╡рд┐рд░рд╛рд╕рдд рд╕рд╛рдорд╛рди' рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рд╕рд╛рдордирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд╣реАрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ 'рд╕реЗрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдФрд░ рдмрд╕ рдирдИ рд╢реИрд▓реА f рдФрд░ .format() рд╕реНрдЯреНрд░реАрдВрдЧ рд╕рд┐рдЦрд╛рдПрдБред
  • [] рд▓реВрдк рд╕реЗрдХреНрд╢рди рдореЗрдВ range , list , рдФрд░ 'string' рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╡реЗ рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реИрдВ, рд▓реЗрдХрд┐рди Python рдореЗрдВ рд╡реЗ рд╕рднреА рдкреБрдирд░рд╛рд╡реГрддреНрдд рд╣реИрдВ, рдпрд╣реА рд╡рдЬрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЙрди рдкрд░ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд▓реВрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреАрд╡рд░реНрдбред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ 'рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдФрд░ рдЬрдирд░реЗрдЯрд░' рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЗрд╕реЗ рдЫреБрдЖ рдЬрд╛ рд╕рдХреЗред

    • [] enumerate()

  • [] рд╕рдВрджрд░реНрдн рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреЛ рдХрд╣реАрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • [] asyncio рд▓рд┐рдП рдПрдХ рдЙрдиреНрдирдд рдЕрдиреБрднрд╛рдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
  • [] рдкрд░рдВрдкрд░рд╛рдЧрдд рд░реВрдк рд╕реЗ PEP 20 рдХреЛ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдХреБрдЫ spam рдФрд░ eggs рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • [] рдкрд░реАрдХреНрд╖рдг
  • [] virtualenvs
  • [] рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
  • [ ] рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ
    рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЦреБрд╢ рд░рд╣реВрдВрдЧрд╛ред рдореИрдВ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреА рдЬрд░реВрд░рдд рд╣реИред

@cldershem рдЗрддрдиреЗ рдорд╣рд╛рди рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж! рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЗ рд╕рд╛рде, рдЖрдк рдЬреЛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдпреЛрдЧрджрд╛рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣ рдкрд╛рда / рдЪреБрдиреМрддрд┐рдпрд╛рдБ рд╕реНрд╡рдпрдВ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рди рд▓реЛрдЧреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ you'd

@cldershem

рдореИрдВ 100% рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпреЛрдЧрджрд╛рди рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

https://github.com/FreeCodeCamp/FreeCodeCamp/wiki/Pull-Request-Contribute

рдЖрдкрдХреЛ рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЗрд╢рд╛рд░рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╢рд╛рдпрдж @ рдПрддрд╛рди-рдПрд░реЛрд╡реБрдб рдЬреАрдердм рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╕реНрддреБрддрд┐рдпрд╛рдБ рд▓реЗрдВрдЧреЗ?

@ t3h2mas рд╣рд╛рдБ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛ рдХрд┐ рдмрд╣реБрдд рд╣реА рд╢реАрд░реНрд╖ рдкрд╛рда / рдЪреБрдиреМрддреА рдкреНрд░рд╕реНрддреБрддрд┐рдпрд╛рдБ рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдпрд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ: mas

@cldershem рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╣реИ

@ рдЕрдЧреНрд░рджреВрддреЛрдВ рдХреЛ рд╢рд╛рдпрдж рдореБрдЭреЗ "рдкрд▓рд╛рдпрди рдкрд╛рддреНрд░реЛрдВ" рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреИрд╕реЗ '\ n', '\ t', рдЖрджрд┐ред

рдФрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рдЯрдиреЗ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдкрд╛рда рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЪреАрдЬреЛрдВ рдХреЛ рддреЛрдбрд╝рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рд╡реИрд╕реЗ, рд╕рднреА рд╕реБрдЭрд╛рд╡реЛрдВ рдФрд░ рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдПрдХ рдирдореВрдирд╛ рд╕рдмрдХ / рдЪреБрдиреМрддреА рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рджреВрд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд░рд╣ рдХрд╛ рдЦрд╛рдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╕рдмрдХ / рдЪреБрдиреМрддреА рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕реА рддрд░рд╣ рд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдирд┐рд╢реБрд▓реНрдХ рдХреЛрдб рд╢рд┐рд╡рд┐рд░ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдкрдирд╛ рдХреЛрдб рдкреЛрд╕реНрдЯ рдХрд░реЗрдВред рдореИрдВ рдЙрд╕реЗ рджреЗрдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред

@ рдПрдерди- рдПрд░реЛрд╡реВрдб @ginoskotheon @cldershem
рдореИрдВ рдПрдлрд╕реАрд╕реА-рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдкрд╛рда рдФрд░ рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред
рдореИрдВ рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ Repl.it рдХреНрд▓рд╛рд╕рд░реВрдо рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╣рд╛рдВ рд╡рд░реНрдгрд┐рдд рдкрд╛рда (рд╢реАрд░реНрд╖рдХ, рд╡рд┐рд╡рд░рдг, рдкрд░реАрдХреНрд╖рдг, рдЖрджрд┐) рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдПрдХ рдмрд╛рд░ рдордВрдЪ / рд░реВрдкрд░реЗрдЦрд╛ рддрдп рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рд╣рдореЗрд╢рд╛ рдХреЛрдб рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдореИрдВрдиреЗ рдирдореВрдирд╛ рдЕрднреНрдпрд╛рд╕ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рд▓рд┐рдЦрд╛ рд╣реИ рдЬреЛ рдЖрдк рдпрд╣рд╛рдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ; рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рджреЗрдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрди рдЗрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдПрдХ рдирдЬрд╝рд░ рд░рдЦрдирд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдХреГрдкрдпрд╛ рдмреЗрдЭрд┐рдЭрдХ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ, рд╕рдорд╛рд▓реЛрдЪрдирд╛ рдХрд░реЗрдВ рдФрд░ рд╕реНрд╡рдпрдВ рдкрд╛рда рдмрджрд▓реЗрдВ, рдФрд░ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХрдм рдФрд░ рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рдордВрдЪ / рд░реВрдкрд░реЗрдЦрд╛ рддрдп рдХреА рдЧрдИ рд╣реИред
рдЗрд╕ рдмреАрдЪ, рдореИрдВ рдКрдкрд░ рджрд┐рдП рдЧрдП рд╢реБрд░реБрдЖрддреА рдкрд╛рдареЛрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЧрдгрд┐рдд рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЬреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрд╕ рдкрд░ рдЖрдЧреЗ рдмрдврд╝ рд░рд╣рд╛ рд╣реИред

рд╣реЗ рджреЛрд╕реНрддреЛрдВ, рдореИрдВ Repl.it рдХрд╛ рд╕рдВрд╕реНрдерд╛рдкрдХ / ceo рд╣реВрдВред FCC рд╣рдорд╛рд░реЗ рджрд┐рд▓реЛрдВ рдХреЗ рдирдЬрд╝рджреАрдХ рдФрд░ рдкреНрд░рд┐рдп рд╣реИ рдЗрд╕рд▓рд┐рдП рд╣рдо рдЬреЛ рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд╣рдо рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рдпрд╣рд╛рдБ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХреЗрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП Repl.it рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдореБрдЦ рдмрд╛рдзрд╛рдПрдВ рдХреНрдпрд╛ рд╣реИрдВ?

@ рдирдорд╕реНрдХрд╛рд░ рдирдорд╕реНрддреЗ! рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЖрдк рдпрд╣рд╛рдБ рд╣реИрдВ here
рдореБрдЦреНрдп рдмрд╛рдзрд╛ рдЬрд┐рд╕реЗ рд╣рдо рдПрдлрд╕реАрд╕реА рдкрд╛рдпрдерди рдХреЛрд░реНрд╕ рдореЗрдВ Repl.it рдЕрдкрдирд╛рдиреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡рд╣ Replit.it рдХреНрд▓рд╛рд╕рд░реВрдо рд░рд┐рдЯрд┐рдЯреНрд╕ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣рдореЗрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдкрд▓рд┐рдЯ рдХреНрд▓рд╛рд╕рд░реВрдо рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ; рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪреБрдиреМрддреА рдкреВрд░реА рдХрд░рддрд╛ рд╣реИ (рд╕рднреА unittests рдХреЛ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ) рддреЛ рдХреИрд╕реЗ рдмрддрд╛рдПрдВред рдмреЗрд╢рдХ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ Repl.it рдХреЗ рднреАрддрд░ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди FreeCodeCamp рдХреА рднрд╛рд╡рдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдЧрд▓реА рдЪреБрдиреМрддреА рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдЧреНрд░рд┐рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ) рдПрдХ рдмрд╛рд░ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╡рд░реНрддрдорд╛рди рдЪреБрдиреМрддреА (рдпрд╛рдиреА рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рднреА unittests рдкрд╛рд╕)ред

рдЗрд╕ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? FCC рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╡реЗрдм рдПрдкреАрдЖрдИ рдпрд╛ рдПрдирдкреАрдПрдо рдореЙрдбреНрдпреВрд▓ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдпрджрд┐ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдХрдИ рджрд░реНрд╢рдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗ рдЖрдПрдВрдЧреЗ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдВрддрд░ рдкрд░ рдПрдХ рдкреНрд░рд╛рдЗрдорд░ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП

// javascript
var dict = {
    a : 1
};

console.log(dict.a)
# python
dict = {
    "a" : 1
}

print(dict["a"])

рдПрдХ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдг рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдпрд╛ рд╕рд░рдгреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЫреЛрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд▓реВрдкрд┐рдВрдЧ рд╣реЛрдЧрд╛ред рдпрд╣ рдореБрдЭреЗ рд╣рд░ рд╕рдордп рдпрд╛рддреНрд░рд╛ рдХрд░рддрд╛ рд╣реИред

_Title_ рд▓реИрдореНрдмреНрдбрд╛ рдХрд╛ рдкрд░рд┐рдЪрдп

_Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рдЕрдзреНрдпрд╛рдп_
srcs:

1 http://stackoverflow.com/questions/890128/why-are-python-lambdas-useful
2 http://www.secnetix.de/olli/Python/lambda_functions.hawk
3 https://pythonconquerstheuniverse.wordpress.com/2011/08/29/lambda_tutorial/
4 http://stackoverflow.com/questions/16501/what-is-a-lambda-function
5 https://en.wikipedia.org/wiki/Anonymous_function

"рдПрдХ рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рди (рдлрд╝рдВрдХреНрд╢рди рд╢рд╛рдмреНрджрд┐рдХ, рд▓реИрдореНрдмреНрдбрд╛ рдПрдмреНрд╕рдЯреНрд░реИрдХреНрд╢рди) рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реИ рдЬреЛ рдПрдХ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдирд╣реАрдВ рд╣реИред" [рел] рд╢рдмреНрдж "рд▓реИрдореНрдмреНрдбрд╛ рд▓реИрдореНрдмрдбрд╛ рдХреИрд▓рдХреБрд▓рд╕ рд╕реЗ рдЖрддрд╛ рд╣реИ" [рек]ред рдЕрдЬрдЧрд░ рдореЗрдВ, рдПрдХ рд▓рдВрдмреЛ рдПрдХ рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреАрд╡рд░реНрдб рд╣реИред рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП lambda рдХреАрд╡рд░реНрдб рдХреА рдЬрдЧрд╣ def рдЗрд╕ рддрд░рд╣ рдХреАрд╡рд░реНрдб, рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рд▓реИрдореНрдмреНрдбрд╛ рджрд┐рдЦрддрд╛ рд╣реИ: lambda x: x**2 рдЗрди рдЪрд░реЛрдВ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреА рддрд░рд╣ рдкреБрди: рдЙрдкрдпреЛрдЧ:

>>> def f (x): return x**2
>>> print f(8)
64
>>> g = lambda x: x**2
>>> print g(8)
64

_src 2_

рд╕рдмрд╕реЗ рдЖрдо рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛрдб рдХреЛ рдЫреЛрдЯрд╛ рдФрд░ рдкрдардиреАрдп рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВ, рдмрдВрдЯрд╡рд╛рд░реЗ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдФрд░ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

def __init__(self, parent):
    """Constructor"""
    frame = tk.Frame(parent)
    frame.pack()

    btn22 = tk.Button(frame,
        text="22", command=self.buttonCmd22)
    btn22.pack(side=tk.LEFT)

    btn44 = tk.Button(frame,
        text="44", command=self.buttonCmd44)
    btn44.pack(side=tk.LEFT)

def buttonCmd22(self):
    self.printNum(22)

def buttonCmd44(self):
    self.printNum(44)

_src 3_

рдЗрд╕ рдЯрд┐рдВрдХрд░ GUI рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ, рдПрдХ рдлрд╝рдВрдХреНрд╢рди _command_ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдирд╛рдорд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдХ рдЖрд░рдПрдбреА рдмрд┐рд▓реНрдбрд░ рдХреЗ рд╕рд╛рде рдЙрддреНрдкрдиреНрди рд╣реБрдП рдереЗред рдпрд╣ рдареАрдХ рд╣реИ рдФрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рд╕реБрдкрд╛рдареНрдп рдирд╣реАрдВ рд╣реИред рдЖрдк рдЙрдирдХрд╛ рдирд╛рдо рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд╕реЗ рдЪреАрдЬреЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдИ рдмрдЯрди рдереЗ, рддреЛ рд╕рд╣реА рдХрдорд╛рдВрдб рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдирд╛ рдмреЛрдЭрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рд╡реЗ рд╕рд┐рд░реНрдл рдПрдХ рдореВрд▓ рдореВрд▓реНрдп рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕рдорд╛рд░реЛрд╣ рд╡рд╣реАрдВ, рдЧреБрдордирд╛рдо рд░реВрдк рд╕реЗ:

frame = tk.Frame(parent)
frame.pack()

btn22 = tk.Button(frame,
        text="22", command=lambda: self.printNum(22))
btn22.pack(side=tk.LEFT)

btn44 = tk.Button(frame,
        text="44", command=lambda: self.printNum(44))
btn44.pack(side=tk.LEFT)

_src 3_

рдЗрд╕ рдЙрдкрдпреЛрдЧ рдХреА рдПрдХ рдЕрдиреНрдп рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдб рдХреЛ рдЫреЛрдЯрд╛ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИ рдЬрдм рдПрдХ рдмрдбрд╝реЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЯреВрд▓ рдХреА рдорд╛рдВрдЧ рдХрд░рддрд╛ рд╣реИред

_рдХреЛрдб рд╕рдВрдХреЗрдд / рдЪреБрдиреМрддреА_
рдПрдХ рд▓рдВрдмреЛрджрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд▓рд┐рдЦреЗрдВ рдЬрд┐рд╕рдореЗрдВ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдкреНрд░рдореБрдЦ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ; рд╕рднреА рдХреЛрдб рдХреЛ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЛрдб рдХреЛ рдЕрдзрд┐рдХ рд╕реБрдкрд╛рдареНрдп рдмрдирд╛рдирд╛; рдЫреЛрдЯреЗ, рдЕрдзрд┐рдХ рдкреНрд░рд╛рдХреГрддрд┐рдХ рдХреЛрдб рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдкред

_ рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреЛрдб_

# only edit below this line
def y(z):
  return abs(5-z)

print(sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=y))

_src 1_

_рдЙрдкрд╛рдп_
print(sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=lambda x: abs(5-x)))

@robbiemu рдорд╣рд╛рди рдХрд╛рдо! рдореЗрд░рд╛ рдПрдХрдорд╛рддреНрд░ рд╕реБрдЭрд╛рд╡ рдкреНрд░рд┐рдВрдЯ рд▓рд╛рдЗрди рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдкреВрд░реНрд╡-рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреЛрдб рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ # only edit this line рддрд░рд╣ рдХреБрдЫ рдХрд╣рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдЕрдЬрдЧрд░ 2 рдХреЛрдб рд╣реИ рдФрд░ рд╣рдо рдЕрдЬрдЧрд░ 3 рдХреЛ рдкрдврд╝рд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХрдорд╛рддреНрд░ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд┐рдВрдЯ рд▓рд╛рдЗрди рдХреЛ рд░реИрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ '()'ред
рдЖрдкрдХреЗ рд╕рд╣рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдПрдерди, рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛ред рд╕рдорд╕реНрдпрд╛ рдФрд░ рд╕рдорд╛рдзрд╛рди рдХреЛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЙрдЪрд┐рдд рдкрд░реАрдХреНрд╖рдг рднреА рд╣реИрдВ (рд╕реНрдереИрддрд┐рдХ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛, рдЬреИрд╕рд╛ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рд╣реИ)ред рдореИрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╕рдмрдХ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

@robbiemu рдмреЗрд╢рдХред рд╣рдо рдЕрднреА рднреА REPL.it рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЬреИрд╕реЗ рд╣реА рд╣рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкрддрд╛ рдЪрд▓реЗрдЧреА, рд╣рдо рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджреЗрдВрдЧреЗред рдЕрднреА рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рдиреМрдХрд░реА ЁЯШД

рдпрд╣ рдЗрд╕ рдзрд╛рдЧреЗ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╢реБрд░реБрдЖрдд - рдЧрдгрд┐рдд рдЕрдиреБрднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЪреБрдиреМрддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред

_Title_ - рдкреВрд░реНрдг рдореВрд▓реНрдп

_Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рдкрд╛рда_ -
рдирд┐рд░рдкреЗрдХреНрд╖ рдореВрд▓реНрдп рд╕реЗ рддрд╛рддреНрдкрд░реНрдп рд╣реИ рдХрд┐ рд╕рдВрдЦреНрдпрд╛ рд╢реВрдиреНрдп рд╕реЗ рдХрд┐рддрдиреА рджреВрд░ рд╣реИред
рдпрджрд┐ рдХреЛрдИ рд╕рдВрдЦреНрдпрд╛ рдЛрдгрд╛рддреНрдордХ рд╣реИ, рддреЛ abs () рдЗрд╕реЗ рдзрдирд╛рддреНрдордХ рдореЗрдВ рдмрджрд▓ рджреЗрдЧрд╛ред
Abs (x) рдореЗрдВ, x рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ, рдлреНрд▓реЛрдЯ рдпрд╛ рдЬрдЯрд┐рд▓ рд╕рдВрдЦреНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
https://docs.python.org/3/library/functions.html#abs
https://docs.python.org/3/library/stdtypes.html#numeric -types-int-float-complex

>>> abs(2)
2
>>> abs(-2)
2
>>> abs(-2.0)
2.0

_Code рдкреНрд░реЙрдореНрдкреНрдЯ / рдЪреБрдиреМрддреА_ -
рдЪрд░ рдирд┐рд░рдкреЗрдХреНрд╖_рд╡рд╛рдпреБ рдмрд░рд╛рдмрд░ -42ред
Abs_value рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рдпрд╣ -42 рдХреЗ рдирд┐рд░рдкреЗрдХреНрд╖ рдорд╛рди рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рдПред

_ рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреЛрдб_ -

absolute_value = -42

_рдЙрдкрд╛рдп_ --

absolute_value = abs(-42)

_Tests_ -

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(absolute_value, int)
        self.assertEqual(absolute_value, 42)

@bgroveben LGTM ред рдЕрдЪреНрдЫрд╛ рдХрд╛рд░реНрдп!

@ рдПрдерди-рдПрд░реЛрд╡реВрдб рдереИрдВрдХ рдпреВ! рдореИрдВрдиреЗ рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдЕрдиреНрдп рдмреБрдирд┐рдпрд╛рджреА / рдЧрдгрд┐рдд рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдкрд╛рда рд▓рд┐рдЦрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдореИрдВ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧрдгрд┐рдд рдХреЗ рдореВрд▓ рдкрд╛рдареЛрдВ рдХреЗ рд╕рд╛рде рдЧреЛрд▓ (), рд░рд╛рд╢рд┐ (), рдЕрдзрд┐рдХрддрдо (), рдФрд░ рдорд┐рдирдЯ () рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛрдЧрд╛ - рд╡реЗ рдХрд╛рдо рдореЗрдВ рдЖрдПрдВрдЧреЗред

@bgroveben рдореИрдВ рдЗрд╕реЗ рдкреВрд░реНрдг рдФрд░ рд╣рд╛рдВ рдХреГрдкрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реВрдВрдЧрд╛ред рдкреНрд░рддреНрдпреЗрдХ рдЪреБрдиреМрддреА рдХреЛ рдПрдХ рдЕрд▓рдЧ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рднреА рдХрд░реЗрдВ; рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдпрд╛ рдЬреЛ рдХреБрдЫ рднреА рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред рдЖрдкрдХреЗ рдпреЛрдЧрджрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

@ рдПрддрд╛рди-Arrowood

@ рдирдорд╕реНрдХрд╛рд░ рдирдорд╕реНрддреЗ! рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЖрдк рдпрд╣рд╛рдБ рд╣реИрдВ here

рдЦреБрд╢реА рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ЁЯТГ

рдореБрдЦреНрдп рдмрд╛рдзрд╛ рдЬрд┐рд╕реЗ рд╣рдо рдПрдлрд╕реАрд╕реА рдкрд╛рдпрдерди рдХреЛрд░реНрд╕ рдореЗрдВ Repl.it рдЕрдкрдирд╛рдиреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡рд╣ Replit.it рдХреНрд▓рд╛рд╕рд░реВрдо рд░рд┐рдЯрд┐рдЯреНрд╕ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣рдореЗрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдкрд▓рд┐рдЯ рдХреНрд▓рд╛рд╕рд░реВрдо рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ; рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪреБрдиреМрддреА рдкреВрд░реА рдХрд░рддрд╛ рд╣реИ (рд╕рднреА unittests рдХреЛ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ) рддреЛ рдХреИрд╕реЗ рдмрддрд╛рдПрдВред рдмреЗрд╢рдХ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ Repl.it рдХреЗ рднреАрддрд░ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди FreeCodeCamp рдХреА рднрд╛рд╡рдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдЧрд▓реА рдЪреБрдиреМрддреА рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдЧреНрд░рд┐рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ) рдПрдХ рдмрд╛рд░ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╡рд░реНрддрдорд╛рди рдЪреБрдиреМрддреА (рдпрд╛рдиреА рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рднреА unittests рдкрд╛рд╕)ред

рдЗрд╕ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? FCC рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╡реЗрдм рдПрдкреАрдЖрдИ рдпрд╛ рдПрдирдкреАрдПрдо рдореЙрдбреНрдпреВрд▓ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕рдореЗрдВ рд╕реЗрдВрдз рд▓рдЧрд╛рддреЗ рд╣реИрдВред рд╢рд┐рдХреНрд╖рдХ рдХреА рдУрд░ рд╕реЗ "рдСрдЯреЛ-рдПрдбрд╡рд╛рдВрд╕" рдпрд╛ рдХреБрдЫ рдХрд╣рдиреЗ рд╡рд╛рд▓реА рдЪреАрдЬреЛрдВ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдХрд░реЗрдВред (рд╣рдо webhooks рдЖрджрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдХреНрдпрд╛ рд╡рд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛?

@amasad рдПрдХ "рдСрдЯреЛ-рдПрдбрд╡рд╛рдВрд╕" рдлреАрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ FreeCodeCamp рдХреЛ рдПрдХ Repl.it рдХрдХреНрд╖рд╛ рдореЗрдВ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рд╣рдо рдЕрднреА рднреА FCC рдХреЗ рдЕрдВрдд рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкреНрд░рдЧрддрд┐ рдХреЛ рдЯреНрд░реИрдХ рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗ рдЬреЛ рдХрд┐ FCC рдХреА рднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред

рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛ рд╣рдореЗрдВ рдПрдХ 'рдХрдХреНрд╖рд╛' рдХрд╛ GET / POST рдбреЗрдЯрд╛ рджреЗрддреА рд╣реИред рдЗрд╕ рддрд░рд╣ рд╣рдо рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

repl.getUser('classroomID', 'userID').then( () => {
    // do stuff async 
}).catch( (error) => {
    // handle error
});

рдпрд╛ рдмреЗрд╣рддрд░ рдЕрднреА рддрдХ:

repl.getProgress('classroomID', 'lessonID', 'userID').then( () => { }).catch( (e) => { });

рдЕрдм рдпреЗ рджреЛрдиреЛрдВ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣рдорд╛рд░реЗ рдЕрдВрдд рдореЗрдВ рдЪрд▓реЗрдВрдЧреА, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ REPL рдХреНрд▓рд╛рд╕рд░реВрдо рдПрдХ iframe рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдореНрдмреЗрдбреЗрдб рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкреНрд░рдЧрддрд┐ рдХреЛ рдареАрдХ рд╕реЗ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП REPL рдХреА рдУрд░ рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рд╕рд░рд▓ рдИрд╡реЗрдВрдЯ рдЯреНрд░рд┐рдЧрд░реНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреНрдпреЛрдВрдХрд┐ рдХреНрд▓рд╛рд╕рд░реВрдо рдПрдХ рдЖрдЗрдлреНрд░реЗрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдореНрдмреЗрдбреЗрдб рд╣реЛрдЧрд╛, рддреЛ рдХреНрдпрд╛ рд╣рдо рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрдм рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдкрд╛рда рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ рддреЛ рдЖрд░рдИрдкреАрдПрд▓ рдХреНрд▓рд╛рд╕рд░реВрдо рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдХреБрдЫ рд▓рд╛рдЗрдиреЗрдВ рдЪрд▓рд╛рддрд╛ рд╣реИ (рдЬрд┐рд╕реЗ рд╣рдо рд╢рд┐рдХреНрд╖рдХ рдкреЛрд░реНрдЯрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ) рддрд╛рдХрд┐ рд╣рдо рдХрдХреНрд╖рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХреЗрдВред рдПрдлрд╕реАрд╕реА рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж?

рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рди рдХреЗрд╡рд▓ рдкрд╛рдпрдерди, рдмрд▓реНрдХрд┐ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рднреА рдЖрд░рдкреАрдПрд▓ рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВрдЧреЗред рдПрдХ рдмрд╛рд░ рдПрдлрд╕реАрд╕реА рдкрд╛рдпрдерди рдкрд╛рдареНрдпрдЪрд░реНрдпрд╛ рдЙрдардиреЗ рдФрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рдЬрд╛рд╡рд╛ рдпрд╛ рд╕реА ++ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗ (рдпрд╛ рд╕рдЪрдореБрдЪ рдХреЛрдИ рднреА рднрд╛рд╖рд╛ рдЬрд┐рд╕реЗ рдЖрд░рдИрдкреАрдПрд▓ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИ!)ред

рдореИрдВ рдЗрд╕ рдкрд░ рдФрд░ рд╕рд╛рде рд╣реА рдХреБрдЫ рдЕрдиреНрдп рдореБрдЦреНрдп FCC рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдкрд░ @QuincyLarson рдХреА рд░рд╛рдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдБрдЧрд╛ (рдореИрдВ рдЧрдЯрд░ / рдордВрдЪреЛрдВ рдкрд░ рдЙрди рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛)ред

рд╣рд╛рдп рд╕рдм, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

@ рджрд╛рдорд╛рдж рдпрд╣рд╛рдВ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рдЬрд╛рдирдХрд░ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ рдХрд┐ REPL.it рдХрдХреНрд╖рд╛ рдХреЗ рдЙрддреНрдкрд╛рдж рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдордВрдЪ рдХреЗ рднреАрддрд░ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗред

рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдЗрд╕реЗ рдЗрд╕ рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдзрд╛рдЧреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдЕрд▓рдЧ рдЪрд░реНрдЪрд╛ рдореЗрдВ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рдЗрд╕реЗ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд░рдЦрд╛ рдЬрд╛ рд╕рдХреЗред

@ рдПрдерди-рдПрд░реЛрд╡реВрдб рдкрд╣рд▓ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдоред рдЖрдкрдХреЗ рдкрд░рд┐рд╢реНрд░рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

@amasad @QuincyLarson I рдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕реВрддреНрд░ (рдкреНрд░рддрд┐ @raisedadead рдЕрдиреБрд╢рдВрд╕рд╛) рдкрд░ REPL рдХрдХреНрд╖рд╛ рдЪрд░реНрдЪрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИред https://github.com/freeCodeCamp/freeCodeCamp/issues/14736

cldershem рджреНрд╡рд╛рд░рд╛ рдЯрд┐рдкреНрдкрдгреА рдкрд░ рдЯрд┐рдкреНрдкрдгреА (8 рджрд┐рди рдкрд╣рд▓реЗ рдЯрд┐рдкреНрдкрдгреА), рдпрд╣рд╛рдБ collections -

рд╢реАрд░реНрд╖рдХ

namedtuples

рд╡рд┐рд╡рд░рдг / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ

1 https://en.wikipedia.org/wiki/Tuple
2 https://docs.python.org/3.6/library/collections.html
3 https://docs.python.org/3.6/library/collections.html#collections.ametuple
4 https://pythonprogramming.net/reading-csv-files-python-3/

рдПрдХ рдЯрдкрд▓ рдЧрдгрд┐рдд рдореЗрдВ рдПрдХ рдЖрдо рдЕрд╡рдзрд╛рд░рдгрд╛ рд╣реИред рдЗрд╕реЗ рддрддреНрд╡реЛрдВ рдХреА рдкрд░рд┐рдорд┐рдд рдХреНрд░рдордмрджреНрдз рд╕реВрдЪреА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред [рез] рдЕрдЬрдЧрд░ рдореЗрдВ, рдпреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЪрд╛рдмрд┐рдпрд╛рдБ рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред Namedtuples рдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рддреНрд╡рд░рд┐рдд рд╕рдВрдкрддреНрддрд┐ рдкреЗрдбрд╝ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдЬреИрд╕реЗ рдХрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рдРрдк рдХреЛ рдореЛрдЬреЗ рдХреЗ рд╕рд╛рде рд╕реМрджрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕рднреА рдореЛрдЬрд╝реЗ рдХрд╛ рдЖрдХрд╛рд░ рдФрд░ рдПрдХ рдореВрд▓реНрдп рд╣реИ, рддреЛ рджреЛ рдлрд╝реАрд▓реНрдб рд╡рд╛рд▓рд╛ рдПрдХ tuple рдЙрдкрдпреЛрдЧреА рд╣реИ, рд╢рдмреНрджрдХреЛрд╢ {size: _size_, price: _price_} рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реИ ред рдЗрди рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдЯрдлрд╝рд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЛ collections.namedtuple рдлрд╝реИрдХреНрдЯрд░реА рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ: [2]
collections.namedtuple(Socks, ['size', 'price'])
рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реЗрд╖рдХрд░ рдЬрдм рд╕рд╛рджреЗ рдкрд╛рда рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдлрд╝реАрд▓реНрдбрдирд╛рдо рдПрдХ рд╕рд░рдгреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рд╕реЗ рдЕрд▓рдЧ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдФрд░ / рдпрд╛ рдЕрдВрддрд░рд┐рдХреНрд╖ рдЕрд▓рдЧ рдорд╛рди: [3]
EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, paygrade')
рдХрд┐рд╕реА рднреА рдорд╛рдиреНрдп рдкрд╛рдпрдерди рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ _fieldname_ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╕рд┐рд╡рд╛рдп рдПрдХ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдХреЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдПред рд╡реИрдз рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рдЕрдХреНрд╖рд░, рдЕрдВрдХ рдФрд░ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рдЕрдВрдХ рдпрд╛ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдХреНрд▓рд╛рд╕, рдлреЙрд░, рд░рд┐рдЯрд░реНрди, рдЧреНрд▓реЛрдмрд▓, рдкрд╛рд╕ рдпрд╛ рдмрдврд╝рд╛рдПрдБ рдЬреИрд╕реЗ рдХреАрд╡рд░реНрдб рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред [рей]
рдПрдХ рдмрд╛рд░ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдиреНрд╣реЗрдВ рд╢рдмреНрджрдХреЛрд╢ рдЬреИрд╕реА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

Point = namedtuple('Point', ['x', 'y'])
p = Point(x=11, y=22)
p[0] + p[1] # 33
x, y = p # (11, 22)
p.x + p.y # 33
p # Point(x=11, y=22)

_from_ [3]

рдХреЛрдб рдкреНрд░реЙрдореНрдкреНрдЯ / рдЪреБрдиреМрддреА

рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдПрдХ рд╕реАрдПрд╕рд╡реА рдирд┐рд░реНрдпрд╛рдд рдХреА рддрд░рд╣, рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдиреЗрдордЯреБрдкрд▓реНрд╕ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдореЗрдВ, рдЗрд╕ рд╕реАрдПрд╕рд╡реА рдЖрдпрд╛рдд рдХреЛ рдПрдХ рдЯреНрдпреВрдкрд▓ рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд░реЗрдВред

рдкрд╣рд▓реЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб

import csv
import collections

# only change code below this line!
recordData = ['fieldNames'] # find the fieldnames in the code below
# only change code above this line!
EmployeeRecord = collections.namedtuple('EmployeeRecord', recordData)

with open('employee-records.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')
    for row in readCSV:
# onlt change code below this line!
        name = row[0]
        age = row[1]
        title = row[2]
        department = row[3]
        paygrade = row[4]

        processEmployee([name, age, title, department, paygrade]) # fails because processEmployee accepts an EmployeeRecord Tuple!
# only change code above this line!

__ рд╕реЗ рдЙрддреНрдкрдиреНрди_ [4]

_note_: рдКрдкрд░ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо with ... readCSV рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
readCSV = csv.reader(['Alan,42,Manager,Sales, N1', 'Beth,38,Regional Director,Operations,CO','Robin,23,Associate,Sales,C2']

рдЙрдкрд╛рдп

import csv
import collections

# only change code below this line!
recordData = ['name', 'age', 'title', 'department', 'paygrade']
# only change code above this line!
EmployeeRecord = collections.namedtuple('EmployeeRecord', recordData)

with open('employee-records.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')
    for row in readCSV:
# onlt change code below this line!
        employee = EmployeeRecord(*row)

        processEmployee(employee)
# only change code above this line!

рдкрд╛рда 2:

рд╢реАрд░реНрд╖рдХ

namedtuples._make

рд╡рд┐рд╡рд░рдг / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ

1 https://docs.python.org/3.6/library/collections.html#collections.onymtuple

NamedTuples рдХреА рдПрдХ рд╡рд┐рдзрд┐ рдЬрд┐рд╕реЗ __make_ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд╣ рдПрдХ рдЗрдЯреЗрд░реЗрдЯрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рднреАрддрд░ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреА рдкреАрдврд╝реА рдХреА рд╕реБрд╡рд┐рдзрд╛ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдкрд┐рдЫрд▓реЗ рдкрд╛рда рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдФрд░ рднреА рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛ рджреЗрдЧрд╛ред
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

for emp in map(EmployeeRecord._make, allRows):
    print(emp.name, emp.title)

рдХреЛрдб рдкреНрд░реЙрдореНрдкреНрдЯ / рдЪреБрдиреМрддреА

рд╣рдо рдкрд┐рдЫрд▓реЗ рдкрд╛рда рдХреЛ рдлрд┐рд░ рд╕реЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдХреЛрдб рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд▓рдЧрднрдЧ рд╡рд╣рд╛рдБ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рдо рдЕрдзреВрд░рд╛ рд╣реИред рдЖрдкрдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд┐рдВрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╛рдж рд░рдЦреЗрдВ, рд╣рдореЗрдВ EmployeeRecord рдмрдирд╛рдиреЗ рдФрд░ рдХреЛрдб рдореЗрдВ рдХрд╣реАрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ:

        employee = EmployeeRecord(*row)

        processEmployee(employee)

рдкрд╣рд▓реЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб

import csv
from collections import namedtuple

EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, paygrade')

for emp in map(EmployeeRecord._make, csv.reader(open("employees.csv", "rb"))):
# only change code below this line!
    print(emp.name, emp.title)

рдЙрдкрд╛рдп

EmployeeRecord = namedtuple('EmployeeRecord', 'name, age, title, department, paygrade')

import csv
for emp in map(EmployeeRecord._make, csv.reader(open("employees.csv", "rb"))):
# only change code below this line!
    processEmployee(emp)

рд╣рдо рднреА рд╢рд╛рдпрдж рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рддреНрд╡рд░рд┐рдд рдкрд╛рда рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • n = NamedTuple(**Dictionary)
  • рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдкреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП ._fields рдХрд╛ рдЙрдкрдпреЛрдЧ: TwoD = namedtuple('TwoD', 'x y') => ThreeD = namedtuple('ThreeD', TWo._fields + ('z',))
  • рдмреБрдирд┐рдпрд╛рджреА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреА рдХрд╡рд░реЗрдЬ: рдбреЗрдЯрд╛ рдЕрдВрддрд░реНрдЧреНрд░рд╣рдг (рд╕реАрдПрд╕рд╡реА рдХреА рддрд░рд╣), рдбреЗрдЯрд╛рдмреЗрд╕ рд▓реЗрдирджреЗрди, рдиреЗрдЯрд╡рд░реНрдХ рд▓реЗрдирджреЗрди, рдкреАрдУрдЬреЗрдУ рдХреА рд╕реБрд╡рд┐рдзрд╛ (рдпрд╛ .. POPO рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ рдмрд╛рдд рд╣реИ? lol)

рдпрд╣рд╛рдВ рд╢реБрд░реБрдЖрддреА рдЧрдгрд┐рдд рдХреА рдЪреБрдиреМрддрд┐рдпрд╛рдВ рд╣реИрдВ:

__Title: __ рдкрд╛рдпрдерди рдПрдбрд┐рд╢рди

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдкрд╛рдпрдерди рдореЗрдВ, рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ (int) 3 рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред
рдЗрд╕ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рдЖрдк рдкреНрд▓рд╕ (+) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдЬреЛрдбрд╝реЗрдВрдЧреЗред

>>> 2 + 2
4

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

0 рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рдХреБрд▓ 20 рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рдПред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

total = 10 + 0

__рдЙрдкрд╛рдп:__

total = 10 + 10

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(total, int)
        self.assertEqual(total, 20)

__Title: __
Divmod () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднрд╛рдЧрдлрд▓ рдФрд░ рд╢реЗрд╖ рдЧрдгрдирд╛ рдХрд░реЗрдВред

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

Divmod рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рджреЛ (рдЧреИрд░ рдЬрдЯрд┐рд▓) рд╕рдВрдЦреНрдпрд╛ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдкреВрд░реНрдгрд╛рдВрдХ рд╡рд┐рднрд╛рдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЙрдирдХреА рднрд╛рдЧрдлрд▓ рдФрд░ рд╢реЗрд╖ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рджреЗрддрд╛ рд╣реИред
рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рдгрд╛рдо (a / b, a% b) рдХреЗ рд╕рдорд╛рди рд╣реИред

>>> divmod(1, 1)
(1, 0)
>>> divmod(3, 2)
(1, 1)

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдЗрд╕ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рдЪрд░ рдФрд░ рдмреА рдЖрдкрдХреЗ рд▓рд┐рдП рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред
рдПрдХ рдЪрд░ рдирд╛рдо рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ рдЬреЛ рдЪрд░ a рдФрд░ b (рдЙрд╕ рдХреНрд░рдо рдореЗрдВ) рдкрд░ divmod рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

a = 11
b = 3

__рдЙрдкрд╛рдп:__

a = 11
b = 3
result = divmod(a, b)

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(result, tuple)
        self.assertEqual(result, (3, 2))

__Title: __ рдкрд╛рдпрдерди рдПрдХреНрд╕рдкреЛрд░реНрдЯрд░

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдЕрдЬрдЧрд░ рдШрд╛рддрд╛рдВрдХ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдбрдмрд▓ рддрд╛рд░рд╛рдВрдХрди (**) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рддрд╛рд░рд╛рдВрдХрди рд╕реЗ рдкрд╣рд▓реЗ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЖрдзрд╛рд░ рд╣реИ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреА рд╕рдВрдЦреНрдпрд╛ рдШрд╛рддрд╛рдВрдХ рд╣реИред
рдкрд╛рдпрдерди рдЖрдкрдХреЛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдкреЙрд╡ (x, y) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рднреА рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ x рдХреЛ y рдХреА рд╢рдХреНрддрд┐ рджреЗрддрд╛ рд╣реИред

>>> 2 ** 2
4
>>> pow(2, 4)
16

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдХрдВрд╕реЛрд▓ рдореЗрдВ, рдЖрдкрдХреЛ рджреЛ рдЪрд░, рдП рдФрд░ рдмреА рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдЗрд╕ рдкрд╛рда рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рдЪрд░ рдирд╛рдо рдХреА рд╢рдХреНрддрд┐ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ рдЬреЛ b рдХреА рд╢рдХреНрддрд┐ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

a = 3
b = 4

__рдЙрдкрд╛рдп:__

a = 3
b = 4
power = pow(a, b)
# or #
power = a ** b

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(power, int)
        self.assertEqual(power, 81)

__Title: __ рдкрд╛рдпрдерди рдлреНрд▓реЛрдЯ рдбрд┐рд╡реАрдЬрди

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдЕрдЬрдЧрд░ 3 рдкреВрд░реНрдгрд╛рдВрдХ (рддрд▓) рд╡рд┐рднрд╛рдЬрди рдФрд░ рдлреНрд▓реЛрдЯ (рд╕рдЪ) рд╡рд┐рднрд╛рдЬрди рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИред
рдкрд╛рдпрдерди рдлреНрд▓реЛрдЯ рдбрд┐рд╡реАрдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдХрд▓ рдлреЙрд░рд╡рд░реНрдб рд╕реНрд▓реИрд╢ (/) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдлреНрд▓реЛрдЯ рдбрд┐рд╡реАрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рднрд▓реЗ рд╣реА рднрд╛рдЧрдлрд▓ (рдкрд░рд┐рдгрд╛рдо) 1 рдпрд╛ 2 рдХреА рддрд░рд╣ рдПрдХ рдкреВрд░реА рд╕рдВрдЦреНрдпрд╛ рд╣реЛ, рдПрдХ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░ рдПрдХ рдЗрдВрдЯ рдХреЗ рдмрдЬрд╛рдп рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред

>>> 1 / 1
1.0
>>> 3 / 2
1.5

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдЬрдм рдЖрдк рдореМрдЬреВрджрд╛ рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рднрд╛рдЧрдлрд▓ рдирд╛рдо рдХреЗ рдЪрд░ рдХрд╛ рдорд╛рди 1.0 рд╣реЛрдЧрд╛ред
рджреВрд╕рд░реА рд╕рдВрдЦреНрдпрд╛ (рд╣рд░) рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рднрд╛рдЧрдлрд▓ рдХрд╛ рдорд╛рди 2.5 рд╣реЛред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

quotient = 5 / 5

__рдЙрдкрд╛рдп:__

quotient = 5 / 2

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(quotient, float)
        self.assertEqual(quotient, 2.5)

__Title: __ рдкрд╛рдпрдерди рдЗрдВрдЯреЗрдЧрд░ рдбрд┐рд╡реАрдЬрди

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдЕрдЬрдЧрд░ 3 рдкреВрд░реНрдгрд╛рдВрдХ (рддрд▓) рд╡рд┐рднрд╛рдЬрди рдФрд░ рдлреНрд▓реЛрдЯ (рд╕рдЪ) рд╡рд┐рднрд╛рдЬрди рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИред
рдЕрдЬрдЧрд░ рдкреВрд░реНрдгрд╛рдВрдХ рд╡рд┐рднрд╛рдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рдбрдмрд▓ рдлреЙрд░рд╡рд░реНрдб рд╕реНрд▓реИрд╢ (//) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдкреВрд░реНрдгрд╛рдВрдХ рд╡рд┐рднрд╛рдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдкрд╛рдпрдерди рднрд╛рдЧрдлрд▓ рдХреЛ рдирд┐рдХрдЯрддрдо рдкреВрд░реНрдг рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред

>>> 1 // 1
1
>>> 3 // 2
1

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдЬрдм рдЖрдк рдореМрдЬреВрджрд╛ рдХреЛрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рднрд╛рдЧрдлрд▓ рдирд╛рдо рдХреЗ рдЪрд░ рдХрд╛ рдорд╛рди 1 рд╣реЛрдЧрд╛ред
рджреВрд╕рд░реА рд╕рдВрдЦреНрдпрд╛ (рд╣рд░) рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рднрд╛рдЧрдлрд▓ рдХрд╛ рдорд╛рди 2 рд╣реЛред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

quotient = 5 // 5

__рдЙрдкрд╛рдп:__

quotient = 5 // 2

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(quotient, int)
        self.assertEqual(quotient, 2)

__Title: __ рдкрд╛рдпрдерди рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдлрд╝рдВрдХреНрд╢рди рдЕрдзрд┐рдХрддрдо () рдПрдХ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╡рд╕реНрддреБ (рдЬреИрд╕реЗ рдПрдХ рд╕реВрдЪреА рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ), рдпрд╛ рджреЛ рдпрд╛ рдЕрдзрд┐рдХ рддрд░реНрдХреЛрдВ рдореЗрдВ рд╕реЗ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рд░рд┐рдЯрд░реНрди рджреЗрддрд╛ рд╣реИред
рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддрд┐ рджреЗрддреЗ рд╕рдордп, рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдореЗрдВ рд╕рднреА рддрддреНрд╡ рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВред
рдпрджрд┐ рдЪрд▓рдиреЗ рдпреЛрдЧреНрдп рдЦрд╛рд▓реА рд╣реИ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдПрдХ ValueError рдЙрдард╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

>>> max(1,2,3,4)
4
>>> list1 = ['a', 'e', 'i', 'o', 'u']
>>> max(list1)
'u'
>>> string1 = "largest"
>>> max(string1)
't'

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рд╕реНрдЯрд╛рд░реНрдЯрд░ рдХреЛрдб рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╣реИ, рд╕рдВрдЦреНрдпрд╛ред
рдЪрд░ рдЙрдЪреНрдЪрддрдо рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЖрд░рдВрднрд┐рдХ рд╣реИред
рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рдЙрдЪреНрдЪрддрдо рдореВрд▓реНрдп рдмрдирд╛рдУред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

numbers = [8, 2, 4, 3, 6, 5, 9, 1]
highest = numbers

__рдЙрдкрд╛рдп:__

numbers = [8, 2, 4, 3, 6, 5, 9, 1]
highest = max(numbers)

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(highest, int)
        self.assertEqual(highest, 9)

__Title: __ рдкрд╛рдпрдерди рдиреНрдпреВрдирддрдо рдорд╛рди

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдлрд╝рдВрдХреНрд╢рди рдорд┐рдирдЯ () рдПрдХ рдкреБрдирд░рд╛рд╡реГрддреНрдд (рдПрдХ рд╕реВрдЪреА рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рддрд░рд╣) рдореЗрдВ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд╡рд╕реНрддреБ, рдпрд╛ рджреЛ рдпрд╛ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рджрд▓реАрд▓реЛрдВ рдореЗрдВ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд╡рд╕реНрддреБ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддрд┐ рджреЗрддреЗ рд╕рдордп, рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдореЗрдВ рд╕рднреА рддрддреНрд╡ рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВред
рдпрджрд┐ рдЪрд▓рдиреЗ рдпреЛрдЧреНрдп рдЦрд╛рд▓реА рд╣реИ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдПрдХ ValueError рдЙрдард╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

>>> min(1,2,3,4)
1
>>> list1 = ['a', 'e', 'i', 'o', 'u']
>>> min(list1)
'a'
>>> string1 = "smallest"
>>> min(string1)
'a'

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рд╕реНрдЯрд╛рд░реНрдЯрд░ рдХреЛрдб рдореЗрдВ рдЕрдХреНрд╖рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд╛рдо, рдЕрдХреНрд╖рд░, рдЕрдХреНрд╖рд░ рд╣реЛрддрд╛ рд╣реИред
рд╡реЗрд░рд┐рдПрдмрд▓ рд╕рдмрд╕реЗ рдХрдо рдЕрдХреНрд╖рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рд╣реЛрддрд╛ рд╣реИред
рдЕрдХреНрд╖рд░реЛрдВ рдореЗрдВ 'рд╕рдмрд╕реЗ рдЫреЛрдЯрд╛' (рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдорд┐рдХ рдкрд╣рд▓реЗ) рдЕрдХреНрд╖рд░ рдХреЗ рдмрд░рд╛рдмрд░ рдирд┐рдореНрдирддрдо рдХрд╛ рдорд╛рди рдмрдирд╛рдЗрдПред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

letters = ['m','o','n','t','y','p','y','t','h','o','n']
lowest = letters

__рдЙрдкрд╛рдп:__

letters = ['m','o','n','t','y','p','y','t','h','o','n']
lowest = min(letters)

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(lowest, str)
        self.assertEqual(lowest, 'h')

__Title: __ рдкрд╛рдпрдерди рдЧреБрдгрди

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдкрд╛рдпрдерди рдЧреБрдгрди рдХреЗ рд▓рд┐рдП рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди (*) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

>>> 3 * 3
9

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

0 рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рдЙрддреНрдкрд╛рдж 80 рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рдПред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

product = 8 * 0

__рдЙрдкрд╛рдп:__

product = 8 * 10

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(product, int)
        self.assertEqual(product, 80)

__Title: __ рдкрд╛рдпрдерди рд░реЗрдорд┐рдиреЗрдбрд░

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

% (Modulo) рдСрдкрд░реЗрдЯрд░ рджреВрд╕рд░реЗ рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд╡рд┐рднрд╛рдЬрди рд╕реЗ рд╢реЗрд╖ рдкреИрджрд╛рд╡рд╛рд░ рджреЗрддрд╛ рд╣реИред
Modulo рдСрдкрд░реЗрдЯрд░ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рджреВрд╕рд░реЗ рдСрдкрд░реЗрдВрдб (рдпрд╛ рд╢реВрдиреНрдп) рдХреЗ рд╕рдорд╛рди рдЪрд┐рдиреНрд╣ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИред

>>> 3 % 2
1
>>> 3 % 2.0
1.0

рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рдВрдЦреНрдпрд╛ рд╡рд┐рд╖рдо рд╣реИ рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╢реЗрд╖ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рд╕рдВрдЦреНрдпрд╛ 2 рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИред
рд╡рд┐рд╖рдо рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рд╢реЗрд╖ 1 рд╣реИред
рд╕рдо рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рд╢реЗрд╖ 0 рд╣реИред

>>> 3 % 2
1
>>> 4 % 2
0

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдореЙрдбреБрд▓реЛ (%) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ 3 рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд 11 рдХреЗ рд╢реЗрд╖ рдХреЗ рдмрд░рд╛рдмрд░ рдЪрд░ рд╕реЗрдЯ рдХрд░реЗрдВред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

remainder = "Solution goes here"

__рдЙрдкрд╛рдп:__

remainder = 11 % 3

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(remainder, int)
        self.assertEqual(remainder, 2)

__Title: __ рдкрд╛рдпрдерди рд░рд╛рдЙрдВрдбрд┐рдВрдЧ

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдлрд╝рдВрдХреНрд╢рди рд░рд╛рдЙрдВрдб (рд╕рдВрдЦреНрдпрд╛, рдПрди-рдЕрдВрдХ) рджрд╢рдорд▓рд╡ рдмрд┐рдВрджреБ рдХреЗ рдмрд╛рдж рдПрди-рдбрд┐рдЬрд┐рдЯ рд╕рдЯреАрдХ рдХреЗ рд▓рд┐рдП рджрд┐рдП рдЧрдП рдирдВрдмрд░ рдХреЛ рд░рд┐рдЯрд░реНрди рдХрд░рддрд╛ рд╣реИред
рдпрджрд┐ n-рдЕрдВрдХ рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдЕрдкрдиреЗ рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдирд┐рдХрдЯрддрдо рдкреВрд░реНрдгрд╛рдВрдХ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рд░рд┐рдЯрд░реНрди рдорд╛рди рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рд╣реИ рдпрджрд┐ рдПрдХ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдпрд╣ рджрд┐рдП рдЧрдП рдирдВрдмрд░ рдХреЗ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИред

>>> round(5)
5
>>> round(5.5)
6
>>> round(5.555, 1)
5.6

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рджрд╢рдорд▓рд╡ рд╕реНрдерд╛рди рдХреЗ рдмрд╛рдж рдЪрд░__ рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЕрдВрдХ рд╣реИрдВред
рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рд╣реИ рдЫреЛрдЯрд╛_рдкреАрдЖрдИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рджрд╢рдорд▓рд╡ рдмрд┐рдВрджреБ рдХреЗ рдмрд╛рдж рд╕рд┐рд░реНрдл рдкрд╣рд▓реЗ 2 рдЕрдВрдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╛рдЙрдВрдб () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдФрд░ рдЙрд╕ рдорд╛рди рдХреЛ рдереЛрдбрд╝рд╛_рд╣реЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

longer_pi = 3.14159265358979323846

__рдЙрдкрд╛рдп:__

longer_pi = 3.14159265358979323846
shorter_pi = round(longer_pi, 2)

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(shorter_pi, float)
        self.assertEqual(shorter_pi, 3.14)

__Title: __ рдкрд╛рдпрдерди рд╕реНрдХреНрд╡рд╛рдпрд░ рд░реВрдЯ

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

Math.sqrt () рдлрд╝рдВрдХреНрд╢рди рдкрд╛рдпрдерди рдХреЗ рдЧрдгрд┐рдд рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрд╢рд╛ рдЙрдкрд▓рдмреНрдз рд╣реЛрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
Math.sqrt (x) x рдХрд╛ рд╡рд░реНрдЧрдореВрд▓ рдлреНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрддрд╛ рд╣реИред

>>> import math
>>> math.sqrt(4)
2.0
>>> math.sqrt(2)
1.4142135623730951

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рдЪрд░ square_root рдХреЛ рд╕рдВрдЦреНрдпрд╛ 81 рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
Square_root рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рдпрд╣ 81 рдХреЗ рд╡рд░реНрдЧрдореВрд▓ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛред
рдЧрдгрд┐рдд рдореЙрдбреНрдпреВрд▓ рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

import math
square_root = 81

__рдЙрдкрд╛рдп:___

import math
square_root = math.sqrt(81)

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(square_root, float)
        self.assertEqual(square_root, 9.0)

__Title: __ рдкрд╛рдпрдерди рдШрдЯрд╛рд╡

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдкрд╛рдпрдерди рдореЗрдВ, рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ (int) 3 рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред
рдЗрд╕ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рдЖрдк рдорд╛рдЗрдирд╕ (-) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдШрдЯрд╛рдПрдВрдЧреЗред

>>> 2 - 1
1

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

0 рдХреЛ рдмрджрд▓реЗрдВ рддрд╛рдХрд┐ рдХреБрд▓ 10 рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рдПред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

total = 20 - 0

__рдЙрдкрд╛рдп:__

total = 20 - 10

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(total, int)
        self.assertEqual(total, 10)

__Title: __ рдкрд╛рдпрдерди рд╕рдо

__Description / рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рд╕рдмрдХ: __

рдлрд╝рдВрдХреНрд╢рди рдпреЛрдЧ (рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐) рдкрд╛рдпрдерди рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдореЗрдВ рд╕рднреА рдЖрдЗрдЯрдо рдЬреЛрдбрд╝рддрд╛ рд╣реИ (рд╕реВрдЪреА, рдЯреНрдпреВрдкрд▓, рдФрд░ рдЗрд╕реА рддрд░рд╣) рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдФрд░ рдХреБрд▓ рд░рд┐рдЯрд░реНрдиред
рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рджреВрд╕рд░рд╛ рддрд░реНрдХ рд╣реИ, рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ, рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореЗрдВ 0 рдФрд░ рдХреБрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЪрд▓рдиреЗ рдпреЛрдЧреНрдп рдЖрдЗрдЯрдо рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рдВрдЦреНрдпрд╛рдПрдВ рд╣реИрдВ, рдФрд░ рдкреНрд░рд╛рд░рдВрдн рдореВрд▓реНрдп рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред

>>> numbers = [1, 2, 3, 4, 5]
>>> sum(numbers)
15
>>> sum(numbers, 1)
16
>>> sum(numbers, 10)
25

__рдХреЛрдб рд╢реАрдШреНрд░ / рдЪреБрдиреМрддреА: __

рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рджреЛ рд╕реВрдЪрд┐рдпрд╛рдБ рд╣реИрдВред
рджреЛрдиреЛрдВ рд╕реВрдЪрд┐рдпреЛрдВ рдореЗрдВ рд╕рднреА рдЖрдЗрдЯрдореЛрдВ рдХрд╛ рдпреЛрдЧ рдЬреНрдЮрд╛рдд рдХрд░реЗрдВ рдФрд░ рдЙрд╕ рдорд╛рди рдХреЛ рдХреБрд▓ рдирд╛рдо рд╡рд╛рд▓реЗ рдПрдХ рдЪрд░ рдкрд░ рдирд┐рдпрдд рдХрд░реЗрдВред

__ рдкреВрд░реНрд╡-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЛрдб: __

list1 = [1, 3, 5, 7, 9]
list2 = [2, 4, 6, 8, 10]

__рдЙрдкрд╛рдп:__

list1 = [1, 3, 5, 7, 9]
list2 = [2, 4, 6, 8, 10]
total = sum(list1, sum(list2))

__Tests: __

class UnitTests(unittest.TestCase):
    def test_main(self):
        self.assertIsInstance(total, int)
        self.assertEqual(total, 55)

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореВрд▓ / рдЧрдгрд┐рдд рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╕рднреА рдкрд╛рда рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдФрд░ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдВрдкрд╛рджрди, рдкрд░рд┐рд╡рд░реНрддрди, рд╕реБрдЭрд╛рд╡, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВред
рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рдЙрди рд╕рднреА рдкрд╛рда рд╣реИрдВ рдЬреЛ рдореИрдВрдиреЗ .py рдФрд░ .md рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд┐рдП рд╣реИрдВ:
https://github.com/bgroveben/FCC_Pythonред
рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдПрдХ REPL рдХреНрд▓рд╛рд╕рд░реВрдо рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ:
https://repl.it/community/classrooms/18388ред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ - рд╣рдо рдЕрдкрдиреА рдкрд╛рдпрдерди рдХреЛрдбрд┐рдВрдЧ рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХреА рдЪрд░реНрдЪрд╛ рдЗрд╕ рдирдИ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд▓реЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ: https://github.com/freeCodeCamp/python-coding-challenges/issues

рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯрд┐рдВрдЧ:
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдХреНрд╕ рдФрд░ рдорд┐рди рджреЛрдиреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:

  1. рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╡рд░реНрдг рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рдХреИрд╕реЗ рд╣реИ
  2. рдПрдХ рдирдВрдмрд░ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ - рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреНрд░рд╛рдЗрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

SaintPeter picture SaintPeter  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kokushozero picture kokushozero  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

robwelan picture robwelan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

QuincyLarson picture QuincyLarson  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

vaibsharma picture vaibsharma  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ