๐Ÿ“’ [ TIL ] 2022.04.27_8์ผ์ฐจ # ์ „๊ธฐ์š”๊ธˆ๊ณ„์‚ฐ๊ธฐ๋งŒ๋“ค๊ธฐ / git ๋‹ค๋ฃจ๊ธฐ

๋ฌธ๋ช…์ฃผยท2022๋…„ 4์›” 27์ผ
0
post-thumbnail

[ 2022-04-27 (์ˆ˜) ์˜ค๋Š˜์˜ TIL ]

[ Today Learn ]

  • python๋ฌธ๋ฒ•์œผ๋กœ ์ „๊ธฐ์š”๊ธˆ๊ณ„์‚ฐ๊ธฐ ๋งŒ๋“ค๊ธฐ(์ชฝ์ง€์‹œํ—˜)
  • git ๋‹ค๋ฃจ๊ธฐ

โšก์ „๊ธฐ ์š”๊ธˆ ๊ณ„์‚ฐ๊ธฐ ๋งŒ๋“ค๊ธฐโšก

๋ฌธ์ œ : ์šฐ๋ฆฌ๊ฐ€ ๋งŒ๋“ค ์ „๊ธฐ ์š”๊ธˆ ๊ณ„์‚ฐ๊ธฐ์—๋Š” 99kWh, 150kWh ์‚ฌ์šฉ๋Ÿ‰์— ํ•ด๋‹นํ•˜๋Š” ์ „๊ธฐ ์š”๊ธˆ์„ ์ถœ๋ ฅํ•ด์ฃผ์„ธ์š”.
printํ–ˆ์„๋•Œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ถœ๋ ฅ๋˜๋ฉด ์„ฑ๊ณต! ์ œํ•œ์‹œ๊ฐ„ 20๋ถ„!

  • ์ฃผํƒ์šฉ ์ „๊ธฐ์š”๊ธˆ (์ €์••) ๊ณ„์‚ฐ๋ฒ•
    ์ €์••์˜ ๊ฒฝ์šฐ 100kWh ์ดํ•˜๋Š” kWh๋‹น 60.7์›, 100kWh ์ดˆ๊ณผ๋Š” 125.9์›, 200kWh ์ดˆ๊ณผ๋Š” 187.9์›, 300kWh ์ดˆ๊ณผ๋Š” 280.6์›, 400kWh ์ดˆ๊ณผ๋Š” 417.7์›, 500kWh์ดˆ๊ณผ๋Š” 670.6์›์˜ ์ „๋ ฅ๋Ÿ‰ ์š”๊ธˆ์„ ๋‚ด์•ผํ•œ๋‹ค

  • ์ „๋ ฅ๋Ÿ‰ ์ดˆ๊ณผ๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ์ดˆ๊ณผ๋ถ„์— ๋Œ€ํ•œ ์š”๊ธˆ์„ ์ฑ…์ •ํ•ด์•ผํ•œ๋‹ค.
    ์˜ˆ๋ฅผ ๋“ค์–ด 150kWh๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค๋ฉด ์‚ฌ์šฉ๋Ÿ‰์˜ 100kWh์— ๋Œ€ํ•ด์„œ๋Š” 60.7์›์„, ๋‚˜๋จธ์ง€ 50kWh ์‚ฌ์šฉ๋Ÿ‰์— ๋Œ€ํ•ด์„œ๋Š” 125.9์›์„ ์ฑ…์ •ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

๋‚˜๋Š” ๋ฆฌ์ŠคํŠธ, ์—ฐ์‚ฐ์ž, for๋ฌธ, fstring์„ ์ด์šฉํ•ด์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ฝ”๋“œ๋ฅผ ์งฐ๋‹ค.

print('=============================')
print('์ฃผํƒ์šฉ ์ „๊ธฐ์š”๊ธˆ(์ €์••) ๊ณ„์‚ฐ๊ธฐ')
print('=============================')

elect = [99, 150]

for elec in elect:
    if elec <= 100:
        price = elec*60.7
        print( f'{elec}kWh์˜ ์ „๊ธฐ ์š”๊ธˆ์€ {price}์› ์ž…๋‹ˆ๋‹ค.')
    elif 200 >= elec > 100:
        price = 100*60.7+(elec-100)*125.9
        print( f'{elec}kWh์˜ ์ „๊ธฐ ์š”๊ธˆ์€ {price}์› ์ž…๋‹ˆ๋‹ค.')

ํŠœํ„ฐ๋‹˜๊ป˜์„œ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์ž์„ธํžˆ ์„ค๋ช…ํ•ด์ฃผ์…จ๋‹ค.

def ์—ฐ์‚ฐ(value):
    # ํฌ๊ฒŒ ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค...
    print("=" * 20);
    print(" ์ฃผํƒ์šฉ ์ „๊ธฐ์š”๊ธˆ(์ €์••) ๊ณ„์‚ฐ๊ธฐ ");
    print("=" * 20);

    # ๋งŒ์•ฝ ์‚ฌ์šฉ์ „๊ธฐ๋Ÿ‰์ด 100์ดํ•˜ ๋ผ๋ฉด์€...
    if (value <= 100):
        # ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ „๊ธฐ๋Ÿ‰(value)์— 60.7์„ ๊ณฑํ•ด์ค€๋‹ค. 
        # ์ „๊ธฐ์„ธ(price)
        price = value * 60.7; 
    # ๋งŒ์•ฝ ์‚ฌ์šฉ์ „๊ธฐ๋Ÿ‰์ด 100์„ ๋„˜์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ
    elif(100 < value):
        # ๊ธฐ์กด 100 ์ดํ•˜์— ๋Œ€ํ•œ ์—ฐ์‚ฐ + 100 ์ดˆ๊ณผ์— ๋Œ€ํ•œ ์—ฐ์‚ฐ 
        # ์ „๊ธฐ์„ธ(price) 
        price = (100 * 60.7) + (value - 100) * 125.9;

    return price

def ์š”๊ธˆ์•ˆ๋‚ด(value, price_input):
    print(value , "kWh์˜ ์ „๊ธฐ ์š”๊ธˆ์€ ", price_input, "์› ์ž…๋‹ˆ๋‹ค.")

def ํ•œ์ „(value):
    price = ์—ฐ์‚ฐ(value)
    ์š”๊ธˆ์•ˆ๋‚ด(value, price_input = price)

ํ•œ์ „(value = 90)

โœ๏ธ git์— ๋Œ€ํ•ด ๋‚ด๊ฐ€ ๋ฐฐ์šด๊ฒƒ

๐Ÿคทโ€โ™€๏ธ ๋ฐฐ์šฐ๊ธฐ ์ „ ๋‚ด๊ฐ€ ์•Œ๊ณ  ์žˆ๋˜ git

โ“ git ๋ž€ ?

์ปดํ“จํ„ฐ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ถ”์ ํ•˜๊ณ  ์—ฌ๋Ÿฌ ๋ช…์˜ ์‚ฌ์šฉ์ž๋“ค ๊ฐ„์— ํ•ด๋‹น ํŒŒ์ผ๋“ค์˜ ์ž‘์—…์„ ์กฐ์œจํ•˜๊ธฐ ์œ„ํ•œ ๋ถ„์‚ฐ๋ฒ„์ „๊ด€๋ฆฌ์‹œ์Šคํ…œ

๐Ÿ‘ git์˜ ์žฅ์ 

  • ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ํ•„์š” ์—†์ด, ๊ฐ™์€ ํŒŒ์ผ์„ ์—ฌ๋Ÿฌ ๋ช…์ด ๋™์‹œ์— ์ž‘์—…ํ•˜๋Š” ๋ณ‘๋ ฌ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ๋ถ„์‚ฐ ๋ฒ„์ „๊ด€๋ฆฌ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ธํ„ฐ๋„ท์ด ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ ๊ณณ์—์„œ๋„ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ค‘์•™ ์ €์žฅ์†Œ๊ฐ€ ๋‚ ์•„๊ฐ€๋ฒ„๋ ค๋„ ๋‹ค์‹œ ์›์ƒ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ“Œ git ์šฉ์–ด ์ •๋ฆฌ

  • Repository : ๋ง ๊ทธ๋Œ€๋กœ โ€˜์ €์žฅ์†Œโ€™๋กœ์„œ ํŒŒ์ผ์ด๋‚˜ ํด๋”๋ฅผ ์ €์žฅํ•ด ๋‘๋Š” ๊ณณ

  • Clone : ์›๊ฒฉ์ง€์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ์ปฌ๋กœ ๋ณต์‚ฌํ•ด์˜ค๋Š” ๊ธฐ๋Šฅ

  • Fork : ๋ณธ์ธ์˜ Repository๊ฐ€ ์•„๋‹Œ, ๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ Repository๋ฅผ ๋ณธ์ธ์˜ Repository๋กœ ๋ณต์ œํ•˜๋Š”๊ฒƒ

  • Commit : ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๋Š” ์ˆ˜๋‹จ์ž…๋‹ˆ๋‹ค. ํŒŒ์ผ์˜ ์ถ”๊ฐ€ / ์ˆ˜์ • / ์‚ญ์ œ์‹œ์— ๋‚จ๊ธฐ๋Š” ๋ฉ”๋ชจ๋กœ, ๋ณ€๊ฒฝ ์ด๋ ฅ ํ™•์ธ ๊ฐ€๋Šฅ

  • Push : ๋กœ์ปฌ Repository์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์›๊ฒฉ์ง€ Repository๋กœ ์—…๋กœ๋“œ ํ•˜๋Š”๊ฒƒ

  • Pull : ๋ฐ˜๋Œ€๋กœ ์›๊ฒฉ์ง€ Repository๋ฅผ ๋กœ์ปฌ Repository๋กœ ๋‚ด๋ ค ๋ฐ›๋Š”๊ฒƒ

๐Ÿ“Œ ๊ฐ€๋…์„ฑ์ด ์ข‹์€ commit ๋ฉ”์‹œ์ง€์˜ ๊ทœ์น™

  1. ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ๋นˆ ํ–‰์œผ๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค
  2. ์ œ๋ชฉ์„ 50๊ธ€์ž ๋‚ด๋กœ ์ œํ•œ
  3. ์ œ๋ชฉ ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ์ž‘์„ฑ
  4. ์ œ๋ชฉ ๋์— ๋งˆ์นจํ‘œ ๋„ฃ์ง€ ์•Š๊ธฐ
  5. ์ œ๋ชฉ์€ ๋ช…๋ น๋ฌธ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ ๊ณผ๊ฑฐํ˜•์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค
  6. ๋ณธ๋ฌธ์˜ ๊ฐ ํ–‰์€ 72๊ธ€์ž ๋‚ด๋กœ ์ œํ•œ
  7. ์–ด๋–ป๊ฒŒ ๋ณด๋‹ค๋Š” ๋ฌด์—‡๊ณผ ์™œ๋ฅผ ์„ค๋ช…ํ•œ๋‹ค

๐ŸŒฑ ๋Š๋‚€ ์ 

์•„์นจ๋ถ€ํ„ฐ ์ชฝ์ง€์‹œํ—˜์„ ๋ณธ๋‹ค๊ณ ํ•ด์„œ ์ •์‹ ์ด ์—†์—ˆ๋Š”๋ฐ ๋‹คํ–‰ํžˆ ์–ด๋ ต์ง€ ์•Š์€ ๋ฌธ์ œ๋ฅผ ๋‚ด์ฃผ์…”์„œ ๋‹คํ–‰์ด์—ˆ๋‹ค.
๋งจ๋‚  ํ”„๋กœ์ ํŠธ๋งŒ ํ•˜๋‹ค๊ฐ€ ์ด๋ ‡๊ฒŒ ์ž์ž˜ํ•˜๊ฒŒ ๋ฐฐ์› ๋˜ ๋‚ด์šฉ์— ๋Œ€ํ•ด์„œ ์ ์šฉํ•ด๋ณผ์ˆ˜์žˆ๋Š” ์ข‹์€ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋‹ˆ๊นŒ ํ™•์‹คํžˆ ๋จธ๋ฆฌ์†์— ๋” ๋‚จ์•˜๋‹ค.โœŒ๏ธ ํ™•์‹คํžˆ ๋‚ด๊ฐ€ ์ง์ ‘ ํ’€์–ด๋ณธ ๋ฌธ์ œ๋กœ ๋‹ค๋ฅด๊ฒŒ ํ’€์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•(ํ•จ์ˆ˜์ ์šฉ)์„ ์„ค๋ช…ํ•ด์ฃผ์‹œ๋‹ˆ๊นŒ ์ดํ•ดํ•˜๊ธฐ ์ˆ˜์›”ํ–ˆ๋‹ค.
์•ž์œผ๋กœ๋„ ์ด๋Ÿฐ ๋ฌธ์ œ๋“ค์„ ๊ณ„์† ๋‚ด์ฃผ์‹œ๋ฉด ์ข‹๊ฒ ๋‹ค!
์‚ฌ์‹ค git์˜ ์ •์˜์™€ ๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ์œ ํŠœ๋ธŒ๊ฐ•์˜๋‚˜ ๋ธ”๋กœ๊ทธ๋ฅผ ๋ณด๋ฉด์„œ ์–ด๋Š์ •๋„ ์•Œ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ, ์ œ์ผ ๊ถ๊ธˆํ–ˆ๋˜๊ฒŒ ํŒ€์›๋“ค๊ณผ ์–ด๋–ป๊ฒŒ ๊ฐ™์ด ํ˜‘์—…ํ•ด์„œ ์ฝ”๋“œ์ถฉ๋Œ์—†์ด ์ผ์„ ํ• ์ˆ˜์žˆ๋Š”์ง€ ๊ทธ๊ฒŒ ์ œ์ผ ๊ถ๊ธˆํ–ˆ๋‹ค. ์˜ค๋Š˜์—์„œ์•ผ ๊ทธ ๊ถ๊ธˆ์ฆ์ด ํ’€๋ฆด ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋” ์ž์„ธํ•œ ๋Š๋‚Œ์€ ์ง์ ‘ ํŒ€์›๋“ค๊ณผ git์„ ํ™œ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ด๋ด์•ผ ์•Œ ์ˆ˜ ์žˆ์„๊ฒƒ๊ฐ™๋‹ค.

profile
ํ•˜๋ฃจ ํ•œ๊ฑธ์Œ์”ฉ ๊พธ์ค€ํžˆ ๋‚˜์•„๊ฐ€๋Š” ๊ฐœ๋ฐœ์ž๐Ÿ™†โ€โ™€๏ธ https://github.com/Moonmooj

2๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2022๋…„ 4์›” 28์ผ

(๋ณด๋Ÿฌ ์™”์Šต๋‹ˆ๋‹ค ^^)

์šฐ์„  ๊ณ ์ƒ ๋งŽ์œผ์…จ์Šต๋‹ˆ๋‹ค :) ์ด์ œ ์ง„์งœ ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•˜์…จ์–ด์š”.

์—๋Ÿฌ ์ฝ”๋“œ๋Š” ์™„๋ฒฝํ•˜๊ฒŒ ์žก์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ๋ง‰์„ ์ˆ˜ ์žˆ์„์ง€ ๊ณ ๋ฏผํ•ด๋ณด์„ธ์š”.
(์˜ˆ์™ธ์ฒ˜๋ฆฌ ๊ฒ€์ƒ‰)

๋งˆ์ง€๋ง‰์œผ๋กœ ๊ธฐ๋Šฅ์ด ๋งŽ์•„์ง€๋ฉด ์กฐ๊ฑด๋ฌธ์„ ๊ฝค ๋งŽ์ด ์ •์˜ํ•˜๊ฒŒ ๋˜๋ฉฐ
์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฝ”๋“œ๊ฐ€ ์•ฝ๊ฐ„ ์ง€์ €๋ถ„ํ•ด์ง‘๋‹ˆ๋‹ค.

์ด๋Ÿด๋•Œ ํŒŒ์ด์ฌ์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ์ฝ”๋“œ๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ฒ€์ƒ‰ํ•ด๋ณด์„ธ์š” :)
(switch ๋ฌธ๋ฒ•)

์ด๋ ‡๊ฒŒ ๊ณต๋ถ€๋ฅผ ์—ด์‹ฌํžˆ ํ•˜์‹  ๋งŒํผ ๋‹ค์Œ ํ”„๋กœ์ ํŠธ๋„ ์ž˜ ํ•ด๋‚ด์‹ค ์ˆ˜ ์žˆ์„๊ฒƒ ์ž…๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ ์›น์œผ๋กœ ๊ฒŒ์ž„์„ ๋งŒ๋“ ๋‹ค ํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ํ•  ์ˆ˜ ์žˆ์„์ง€ ๊ณ ๋ฏผํ•ด๋ณด์„ธ์š” :)

1๊ฐœ์˜ ๋‹ต๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด