์ซ์ ํํ์ ์๋ฃํ
์ฌ์น์ฐ์ฐ
์ฃผ์) /๊ณผ //๋ ์์ฐํ ๋ค๋ฆ. 11/2=5.5, 11/2=5.
์ํ๋ฒณ, ํ๊ธ, ํํ๊ธฐํธ, ์ซ์ ๋ฑ๋ฑ character์ sequence
"๋ฌธ์์ด", '๋ฌธ์์ด', """๋ฌธ์์ด""", '''๋ฌธ์์ด''' ์ผ๋ก ์์ฑ ๊ฐ๋ฅ
'์ ์ฌ์ฉํ๊ณ ์ถ์ ๋๋ "์ผ๋ก ๋๋ฌ์ธ๊ณ , "์ ๋ฌธ์์ด ์์ ์ฌ์ฉํ๊ณ ์ถ์ผ๋ฉด '์ผ๋ก ๋๋ฌ์ธ๋ฉด ๋จ.
or ์ด์ค์ผ์ดํ ์ฝ๋ ์ฌ์ฉ
''' ๋๋ """์ ์ฌ์ฉํด์ ๋๋ฌ์ธ๊ธฐ or ์ด์ค์ผ์ดํ ์ฝ๋(\n) ์ฌ์ฉ
"", '' ๋น์ด์๋ ๋ฌธ์์ด๋ string ์ทจ๊ธํจ.
Python built in functions for string
- len(): ๋ฌธ์์ด์ ๊ธธ์ด ๊ตฌํ๊ธฐ
- +: ๋ฌธ์์ด ์ฐ๊ฒฐ
- *: ๋ฌธ์์ด ๋ฐ๋ณต print("="* 50)๋ฑ์ผ๋ก ์ ๋ฆฌํ ๋ ์ ์ฉ
- int(): string-> int type์ ์ซ์๋ก ์ ํ
'a'์ด๋ฐ ๋ฌธ์์ด์ ์ ํ์ด ๋น์ฐํ ์๋จ. ์ซ์๋ก ๋์ด ์๋ ๋ฌธ์์ด.- float(): string->float type์ ์ซ์๋ก ์ ํ
>>> print(1,2,3)
1 2 3
>>>
# ,๋ก ์ถ๋ ฅํ๋ฉด ๊ฐ ์ฌ์ด ์คํ์ด์ค ๊ฐ๊ฒฉ์ด ์๊ธฐ๊ณ , ๋ง์ง๋ง ๊ฐ์ ์ถ๋ ฅํ ์ดํ ๊ฐํ
>>>print()
# ์
๋ ฅ์ด ์์ผ๋ฉด default๋ก ์ค ๋ฐ๊ฟ ํ ๋ฒ ์ํ,can print values of any type
>>>print('a','b','c', sep='-')
a-b-c
# sep: default๊ฐ space. ๊ฐ๋ค ์ฌ์ด์ ์ฝ์
๋๋ ๋ฌธ์์ด(๋ณ๊ฒฝ ๊ฐ๋ฅ)
>>>print('a','b','c',sep='-',end='r')
a-b-cr
# end: ๋ง์ง๋ง ์
๋ ฅ๊ฐ ๋ค์ ๋ํ๋๋ ๋ฌธ์์ด. newline(๊ฐํ)์ด default(๋ณ๊ฒฝ ๊ฐ๋ฅ)
# ์ฐธ๊ณ ) file = sys.stdout ์ธ์: ํ์ค์
์ถ๋ ฅ๊ณผ ์ฐ๊ด. ํ๋ก๊ทธ๋จ์์ ํน๋ณํ ์ค์ ์ด ์๋ค๋ฉด print ํจ์๋ ํ๋ฉด์ ์ถ๋ ฅํ๋ ๊ฒ์ด default(๋ณ๊ฒฝ ๊ฐ๋ฅ)
""" flush=False ์ธ์: ํ๋์จ์ด I/O ๋ฒํผ์ ์ฐ๊ด. ๋ฒํผ ์ฅ์น๋ ์ถ๋ ฅ ์ ํค๋ณด๋์์ ์
๋ ฅํ ๋ด์ฉ์ ๋ณด๊ด.
flush๋ ํค๋ณด๋์์ ์
๋ ฅ๋์ด ๋ฒํผ์ ์ ์ฅ๋ ๋ด์ฉ์ ์ถ๋ ฅ๋ฐฉํฅ(์ฌ๊ธฐ์๋ ํ๋ฉด)์ผ๋ก ๋ฐ๋ก ๋ฐ์ด๋ฃ๋๋ค๋ ์๋ฏธ. ๋ฐ์ด๋ฃ๋ ์์
์ ์ ๊ฒ ํ ์๋ก ํจ์จ์ ์ด๋ฏ๋ก ์ธ์๋ฅผ False๋ก ํด๋์ผ๋ฉด ๊ฒฝ์ฐ์ ๋ฐ๋ผ์ ๋น์ฉ์ ๊ฐ์ ์ํด ์
๋ ฅ๋ ๋ด์ฉ์ด ๋ฐ๋ก ํ๋ฉด์ ์ถ๋ ฅ๋์ง ์์ ์๋ ์์. """
- ์ธ๋ฑ์ฑ: ๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๋ง๋ค ๋ฒํธ๋ฅผ ๋ถ์ฌ-> ๋ฌธ์์ด a๋ฅผ ์ ์ํ์ ๋ a[๋ฒํธ]์ ํํ๋ก ๋ฌธ์์ด ์์ ํน์ ํ ๊ฐ(ํ ๋ฌธ์)์ ๋ฝ์๋.
๋ฌธ์์ด์์ ์ฒซ ๋ฒ์งธ ์๋ฆฌ๋ 0๋ถํฐ ์์๋จ(์ฃผ์).
์์ ์ธ๋ฑ์ค๋ ์ฒซ ๋ฒ์งธ ์๋ฆฌ๋ถํฐ 0์ผ๋ก ์์,
์์ ์ธ๋ฑ์ค๋ ๋งจ ๋ท ์๋ฆฌ์์๋ถํฐ -1๋ก ์์๋จ. (-0=0์ด๋ฏ๋ก ์์์ ์ฒซ๋ฒ์งธ ๊ธ์ ์๋ฏธ)
- ์ฌ๋ผ์ด์ฑ: ํ ๊ฐ ์ด์์ ๋ฌธ์์ด์ ๋ฝ์๋ด๊ณ ์ถ์ ๋,
a[์์ ๋ฒํธ: ๋๋ฒํธ]์ ํํ๋ก ์ฌ์ฉ. ์์๋ฒํธ๋ถํฐ (๋๋ฒํธ-1)์ ํด๋น๋๋ ์๋ฆฌ๊น์ง ๋ฌธ์๋ฅผ ๋ฝ์๋.
a[์์ ๋ฒํธ:] - ์์๋ฒํธ๋ถํฐ ๊ทธ ๋ฌธ์์ด์ ๋๊น์ง
a[:๋ ๋ฒํธ] - ๋ฌธ์์ด์ ์ฒ์๋ถํฐ ๋๋ฒํธ-1๊น์ง
a[:] - ๋ฌธ์์ด์ ์ฒ์๋ถํฐ ๋๊น์ง
a='you only live once.'
a[9:12]
>>>'liv'
a[12:-2]
>>>'e onc' #๋ง์ฐฌ๊ฐ์ง๋ก 12๋ฒ์งธ ์๋ฆฌ์์ -3์๋ฆฌ๊น์ง ์ถ๋ ฅ. -2๋ ํฌํจ๋์ง ์์.
date='20221022Rainy'
year=date[:4]
month=[4:6]
date=[6:8]
weather=[8:]
์ธ๋ฑ์ฑ, ์ฌ๋ผ์ด์ฑ-> list์ tuple์์๋ ์ฌ์ฉ ๊ฐ๋ฅ.
๋ฌธ์์ด ์์ ํน์ ํ ๊ฐ์ ๋ณ๊ฒฝํ๊ณ ์ถ์ ๋ ์ฌ์ฉ
>>>"I have %s apples" %3
'I have 3 apples'
#3์ ๋ฌธ์์ด ์์ ์ฝ์
ํ๋ ค๋ฉด %d๋ฅผ ์ฌ์ฉํด์ผ ํ๋๋ฐ %s๋ ์๋์ผ๋ก %๋ค์ ๊ฐ์ ๋ฌธ์์ด๋ก ๋ฐ๊พธ๊ธฐ ๋๋ฌธ์ ์ด๋ค ํํ์ ๊ฐ์ด๋ ๋ณํํ์ฌ ๋ฃ์ ์ ์์.
์ฃผ์) %์์ %๋ฅผ ์ธ ๋๋ %%์ ์ด๋ค.
ex) >>>"Error is %d%%" %98
'Error is 98%
>>> "%10s" % "hi"
# ์ ์ฒด ๊ธธ์ด๊ฐ 10๊ฐ์ธ ๋ฌธ์์ด ๊ณต๊ฐ์์ ๋์
๋๋ hi๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก ์ ๋ ฌ(๋๋จธ์ง๋ ๊ณต๋ฐฑ)
>>> "%-10sjane" % 'hi'
#์ ์ฒด ๊ธธ์ด๊ฐ 10์ธ ๋ฌธ์์ด ๊ณต๊ฐ์์ hi๋ ์ผ์ชฝ ์ ๋ ฌ, ๋๋จธ์ง๋ ๊ณต๋ฐฑ. ๋ค์๋ jane์ด ๋ถ์
#์ธ๋ฑ์ค {} ๋ฐฉ์ ex) {0}, {1}
>>>print('์ค์ : {1}, ์ซ์ : {0}, ๋ฌธ์์ด : {2}'.format(5, 0.5, 'ํ๊ธธ๋'))
'์ค์ : 0.5, ์ซ์ : 5, ๋ฌธ์์ด : ํ๊ธธ๋'
format ํจ์๋ก ์ซ์, ๋ฌธ์์ด, ๋ณ์ ๋์
๋ค ๊ฐ๋ฅ
์ธ๋ฑ์ค ๋ฐฉ์์ ๊ฒฝ์ฐ {0}์ผ๋ก ์์ํด์ผ ๋จ
# ๋ณ์ ์ง์ ๋ฐฉ์ {name} ํํ
print('์ค์ : {a}, ์ซ์ : {b}, ๋ฌธ์์ด : {c}'.format(a=0.1, b=100, c='์ผ์ฑ์ ์'))
'์ค์ : 0.1, ์ซ์ : 100, ๋ฌธ์์ด : ์ผ์ฑ์ ์'
#์ ๋ ฌ
>>>"{0:<10}".format("hi")
10๊ฐ์ ์๋ฆฌ์์ ์ผ์ชฝ ์ ๋ ฌ๋ hi๋ฅผ ์ถ๋ ฅ
{0:<10} ์ผ์ชฝ ์ ๋ ฌ {0:^10} ๊ฐ์ด๋ฐ ์ ๋ ฌ {0:>10} ์ค๋ฅธ์ชฝ ์ ๋ ฌ
#๊ณต๋ฐฑ ์ฑ์ฐ๊ธฐ
์ ๋ ฌ ํ ๋ ๊ณต๋ฐฑ์ ๋ค๋ฅธ ๋ฌธ์๊ฐ์ผ๋ก ์ฑ์ฐ๊ธฐ
>>> "{0:!<10}".format("hi")
'hi!!!!!!!!'
10๊ฐ์ ์๋ฆฌ์์ hi๋ฅผ ์ผ์ชฝ ์ ๋ ฌ, ๊ทธ ๊ณต๋ฐฑ์ !์ผ๋ก ์ฑ์.
#f-sting formatting
ํ์ด์ฌ 3.6๋ฒ์ ๋ถํฐ ์๋ก ์๊ธด ๊ธฐ๋ฅ
๋ฌธ์์ด ์์ f ๋ฌธ์๋ฅผ ์ถ๊ฐํ๊ณ {} ์์ ๋ฐ๋ก ๋ณ์๋ช
์ ์ ์ผ๋ฉด ๋จ.
>>> name='์ ์ฐ'
>>> age=22
>>>f'๋ด ์ด๋ฆ์ {name}์ด๊ณ ๋์ด๋ {age}์ด๋ค.'
'๋ด ์ด๋ฆ์ ์ ์ฐ์ด๊ณ ๋์ด๋ 22์ด๋ค.'
๋ณ์ ๊ฐ์ ์์ฑํ ํ์ ๊ทธ ๊ฐ์ ์ฐธ์กฐํ๋ ๋ฐฉ์์. ๋ฌธ์์ด ์์์ +-๊ฐ์ ์์๋ ํจ๊ป ์ฌ์ฉ ๊ฐ๋ฅ.
๋์
๋๋ฆฌ ํฌ๋งท๋ ์ฌ์ฉ ๊ฐ๋ฅ