Programming/Python

๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ

1. ์„ ์–ธ ๋ฐ ์ฃผ์„ 

#๋ฌธ์ž์—ด์„ ์„ ์–ธํ•  ๋•Œ๋Š” ๋”ฐ์˜ดํ‘œ( ' ), ์Œ๋”ฐ์˜ดํ‘œ( " )๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ ๋‘˜์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ

>>> test1 = "eunhye"
>>> print(test1)
eunhye
>>> test2 = 'eunhye'
>>> print(test2)
eunhye
>>> test3 = "eunhye'
  File "<stdin>", line 1
    test3 = "eunhye'
                   ^
SyntaxError: EOL while scanning string literal
#ํŠน์ • ๋ฌธ์ž ์ถœ๋ ฅ์„ ์œ„ํ•ด์„œ๋Š” ์ด์Šค์ผ€์ดํ”„ ๋ฌธ์ž๋ฅผ ์‚ฌ์šฉ

>>> test = 'hi\ni\'m eunhye'
>>> print(test)
hi
i'm eunhye
์ด์Šค์ผ€์ดํ”„ ๋ฌธ์ž ์ถœ๋ ฅ ๋ฌธ์ž
\' ๋”ฐ์˜ดํ‘œ( ' )
\" ์Œ๋”ฐ์˜ดํ‘œ( " )
\t ํƒญ (tab)
\n ์ค„๋ฐ”๊ฟˆ(new line)
\\ ๋ฐฑ์Šฌ๋ž˜์‹œ( \ )
#๋ฌธ์ž์—ด์„ ์„ ์–ธํ•  ๋•Œ ์•ž์— r์„ ๋†“์œผ๋ฉด ์ด์Šค์ผ€์ดํ”„ ๋ฌธ์ž๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ์ถœ๋ ฅ ๊ฐ€๋Šฅ

>>> print(r'i\'m eunhye')
i\'m eunhye
#์—ฌ๋Ÿฌ ๋ฌธ์ž์—ด์„ ์„ ์–ธํ•  ๋•Œ๋Š” 3๊ฐœ์˜ ๋”ฐ์˜ดํ‘œ( ''' )๋ฅผ ์‚ฌ์šฉ

>>> print('''hi
... i'm eunhye''')
hi
i'm eunhye
#์ฃผ์„์ด ๋œ ๋ผ์ธ์€ ์ปดํŒŒ์ผ์—์„œ ๋ฌด์‹œ๋˜๊ฒŒ ๋˜๋ฉฐ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ๋งž์ค˜์•ผ ํ•จ

#ํ•œ์ค„ ์ฃผ์„

"""
์—ฌ๋Ÿฌ์ค„ ์ฃผ์„
"""

'''
์—ฌ๋Ÿฌ์ค„ ์ฃผ์„
'''

 

2. ์ธ๋ฑ์‹ฑ

#๋ฌธ์ž์—ด์€ ๋ฆฌ์ŠคํŠธ๋กœ ์ƒ๊ฐํ•˜์—ฌ ์ธ๋ฑ์‹ฑํ•  ์ˆ˜ ์žˆ์Œ

>>> test = 'eunhye'
>>> print([test[i] for i in range(0, len(test))])
['e', 'u', 'n', 'h', 'y', 'e']
#์ธ๋ฑ์‹ฑ๋œ ๋ฌธ์ž์—ด์„ ์›ํ•˜๋Š” ๋ถ€๋ถ„๋งŒ ์ถœ๋ ฅ ๊ฐ€๋Šฅ

>>> test[0:6]
'eunhye'
>>> test[:3]
'eun'
>>> test[3:]
'hye'
>>> test[-1]
'e'
>>> test[-2]
'y'
>>> test[-3]
'h'
#๋ฌธ์ž์—ด์— ํŠน์ • ๋ฌธ์ž ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅ

>>> 'eun' in test
True
>>> 'eunhye' in test
True
>>> 'eunhye' not in test
False
>>> 'eunhye ju' in test
False
#upper() : ๋Œ€๋ฌธ์ž๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ถœ๋ ฅ ๊ฐ€๋Šฅ
#lower () : ์†Œ๋ฌธ์ž๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ถœ๋ ฅ ๊ฐ€๋Šฅ

>>> print(test.upper())
EUNHYE
>>> print(test.lower())
eunhye
#isupper() : ๋ฌธ์ž์—ด์ด ๋Œ€๋ฌธ์ž๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
#islower() : ๋ฌธ์ž์—ด์ด ์†Œ๋ฌธ์ž๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ

>>> test.isupper()
False
>>> test.islower()
True
#isalpha() : ๋ฌธ์ž์—ด์ด ๋ฌธ์ž๋กœ๋งŒ(๊ธฐํ˜ธ X) ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
#isalnum() : ๋ฌธ์ž์—ด์ด ๊ณต๋ฐฑ์„ ํฌํ•จํ•˜๋Š”์ง€ ํ™•์ธ
#isdecimal() : ๋ฌธ์ž์—ด์ด ์ˆซ์ž๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
#isspace() : ๋ฌธ์ž์—ด์ด ๊ณต๋ฐฑ/ํƒญ/์ค„๋ฐ”๊ฟˆ์œผ๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ
#istitle() : ๋ฌธ์ž์—ด์ด ํƒ€์ดํ‹€์ธ์ง€(๊ฐ ๋‹จ์–ด๊ฐ€ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘, ์ดํ›„ ๋‹จ์–ด๋Š” ์†Œ๋ฌธ์ž) ํ™•์ธ

>>> 'eunhye'.isalpha()
True
>>> 'eunhye0225'.isalpha()
False
>>> 'eunhye0225'.isalnum()
True
>>> 'eunhye 0225'.isalnum()
False
>>> '0225'.isdecimal()
True
>>> 'eunhye0225'.isdecimal()
False
>>> 'eunhye 0225'.isspace()
False
>>> ' '.isspace()
True
>>> 'eunhye0225'.istitle()
False
>>> 'Title'.istitle()
True
#starswith() : ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ๋ฌธ์ž๋ฅผ ํ™•์ธ 
#endswith() :  ๋ฌธ์ž์—ด์˜ ๋ ๋ฌธ์ž๋ฅผ ํ™•์ธ


>>> test1 = 'eunhye0225'
>>> test2 = '0225eunhye'
>>> test1.startswith('e')
True
>>> test1.endswith('0')
False
>>> test2.startswith('5')
False
>>> test2.endswith('e')
True

 

3. ์Šฌ๋ผ์ด์‹ฑ

#๋ฌธ์ž์—ด์€ ๋ฆฌ์ŠคํŠธ๋กœ ์ƒ๊ฐํ•˜์—ฌ ์กฐ์ด๋‹/์Šฌ๋ผ์ด์‹ฑํ•  ์ˆ˜ ์žˆ์Œ

>>> ', '.join(['A', 'B', 'C'])
'A, B, C'
>>> ' '.join(['i\'m', 'eunhye'])
"i'm eunhye"
>>> 'A, B, C'.split(', ')
['A', 'B', 'C']
>>> 'i\'m eunhye'.split()
["i'm", 'eunhye']
#๋ฌธ์ž์—ด์— ํŠน์ • ๋ฌธ์ž๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์˜ค๋ฅธ์ชฝ/์™ผ์ชฝ/์ค‘๊ฐ„ ์ •์—ดํ•  ์ˆ˜ ์žˆ์Œ

>>> 'eunhye'.rjust(10)
'    eunhye'
>>> 'eunhye'.ljust(10)
'eunhye    '
>>> 'eunhye'.center(10)
'  eunhye  '
>>> 'eunhye'.ljust(10, '-')
'eunhye----'
>>> 'eunhye'.rjust(10, '-')
'----eunhye'
>>> 'eunhye'.center(10, '-')
'--eunhye--'
#๋ฌธ์ž์—ด์— ํŠน์ • ๋ฌธ์ž๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ ์˜ค๋ฅธ์ชฝ/์™ผ์ชฝ/์ค‘๊ฐ„ ์ •์—ดํ•  ์ˆ˜ ์žˆ์Œ

>>> '  eunhye  '.rstrip()
'  eunhye'
>>> '  eunhye  '.lstrip()
'eunhye  '
>>> '  eunhye  '.strip()
'eunhye'
>>> '--eunhye--'.rstrip('-')
'--eunhye'
>>> '--eunhye--'.lstrip('-')
'eunhye--'
>>> '--eunhye--'.strip('-')
'eunhye'
>>> import pyperclip

#pyperclip.copy() : ํŠน์ • ๋ฌธ์ž ๋ณต์‚ฌ
#pyperclip.paste() : ํŠน์ • ๋ฌธ์ž ๋ถ™์—ฌ๋„ฃ๊ธฐ

>>> pyperclip.copy('eunhye')
>>> pyperclip.paste()
'eunhye'