print/inputํ•จ์ˆ˜

print() : ํ‘œ์ค€์ถœ๋ ฅ์žฅ์น˜. ์ฝ˜์†” ์ถœ๋ ฅ.
input() : ํ‘œ์ค€์ž…๋ ฅ์žฅ์น˜. ํ‚ค๋ณด๋“œ ์ž…๋ ฅ.
ํ˜• ๋ณ€ํ™˜


1. print()

help(print) #๋„์›€๋ง


1) ๊ธฐ๋ณธ ์ธ์ˆ˜

print(10, 20, 30) #10 20 30 -> sep=' ' (ํ•œ ์นธ์˜ ๊ณต๋ฐฑ) print('010','1234','1234', sep='-') #010-1234-1234


end ์†์„ฑ

print(10,20, sep=',', end=',') print(30)


2) % ์–‘์‹๋ฌธ์ž
ํ˜•์‹) print('%์–‘์‹๋ฌธ์ž'%๊ฐ’)

num1 = 10 num2 = 20 tot = num1 + num2 print('%d + %d = %d'%(num1, num2, tot)) #10 + 20 = 30 print('์ด๋ฆ„์€ %s ์ด๊ณ , ๋‚˜์ด๋Š” %d ์ด๋‹ค.'%('ํ™๊ธธ๋™', 35)) #์ด๋ฆ„์€ ํ™๊ธธ๋™ ์ด๊ณ , ๋‚˜์ด๋Š” 35 ์ด๋‹ค. print('์›์ฃผ์œจ = %8.3f'%(3.14159)) #์›์ฃผ์œจ = 3.142


50%

print('์ „์ฒด ์ฐฌ์„ฑ๋ฅ ์€ %d%% ์ด๋‹ค.'%50) #์ „์ฒด ์ฐฌ์„ฑ๋ฅ ์€ 50% ์ด๋‹ค.


3) format()ํ•จ์ˆ˜ ์ด์šฉ
ํ˜•์‹) print({์–‘์‹}.format(๊ฐ’))

print('์ด๋ฆ„์€ {}์ด๊ณ , ๋‚˜์ด๋Š” {}์ด๋‹ค.'.format('ํ™๊ธธ๋™', 35))


{์œ„์น˜:์–‘์‹}

print('์ •์ˆ˜ํ˜• = {0:d}, {1:5d}, ์—ฐ๋ด‰:{2:3,d}'.format(123,1234,3500)) #์ •์ˆ˜ํ˜• = 123, 1234, ์—ฐ๋ด‰:3,500 print('์›์ฃผ์œจ = {0:.3f}, {1:8.3f}'.format(3.14159, 3.14159)) #์›์ฃผ์œจ = 3.142, 3.142


์ถ•์•ฝํ˜• format

name = 'ํ™๊ธธ๋™'; age=35


sql = 'select * form emp where name = '{}' and age = {}'.format(name, age)

sql = f"select * from emp where name = '{name}' and age = {age}" print(sql) #select * from emp where name = 'ํ™๊ธธ๋™' and age = 35






2. input() : ํ‘œ์ค€์ž…๋ ฅ์žฅ์น˜
ํ‚ค๋ณด๋“œ(๋ฌธ์ž์—ด) -> ์ •์ˆ˜ํ˜• ๋ณ€ํ™˜

a = int(input('์ •์ˆ˜ ์ž…๋ ฅ : ')) #20 b = int(input('์ •์ˆ˜ ์ž…๋ ฅ : ')) #30 print(a+b) 2030 -> 50


ํ‚ค๋ณด๋“œ(๋ฌธ์ž์—ด) -> ์‹ค์ˆ˜ํ˜• ๋ณ€ํ™˜

x = float(input('์‹ค์ˆ˜ ์ž…๋ ฅ : ')) #12.5 y = float(input('์‹ค์ˆ˜ ์ž…๋ ฅ : ')) #25.34 print(x+y) #37.84


3) ํ˜• ๋ณ€ํ™˜ (Casting)

pirnt(int(24.5)) #์‹ค์ˆ˜ -> ์ •์ˆ˜ print(int('120')*2) #๋ฌธ์ž์—ด -> ์ •์ˆ˜ int('no123') #ValueError print(2 + '100') #TypeError print(2 + int('100')) #102 print('๋‚˜์ด : ' + str(35)) #๋‚˜์ด : 35 -> ๊ฒฐํ•ฉ์—ฐ์‚ฐ์ž print('๋‚˜์ด :', 35) #๋‚˜์ด : 35


booLeanํ˜• -> ์ •์ˆ˜

print(int(True)) #1 print(int(False)) #0






๋ฌธ์ž์—ด

๋ฌธ์ž์—ด(String) ํŠน์ง•
์ˆœ์„œ ์žˆ๋Š” ๋ฌธ์ž๋“ค์˜ ์ง‘ํ•ฉ
์ƒ‰์ธ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ([0]๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ n-1๋ฒˆ์งธ๋ฅผ ์ˆ™์ง€ํ•  ๊ฒƒ)
indexing(ํŠน์ • ๋ฌธ์ž์—ด ์œ„์น˜ ๋ฐ˜ํ™˜)/slicing(๋ฌธ์ž์—ด ์ชผ๊ฐœ๊ธฐ) ๊ฐ€๋Šฅ
์ƒ์ˆ˜ ์ˆ˜์ • ๋ถˆ๊ฐ€๋Šฅ


1. ๋ฌธ์ž์—ด ์œ ํ˜•

lineStr = "this is one line string" #ํ•œ ์ค„ ๋ฌธ์ž์—ด print(type(lineStr)) #<class 'str'>

* class : ๊ฐ์ฒด ์ƒ์„ฑ ๋„๊ตฌ
* object(๊ฐ์ฒด) : class์— ์˜ํ•ด ๋งŒ๋“ค์–ด์ง„ ๊ณผ์ œ๋ฌผ

์—ฌ๋Ÿฌ ์ค„ ๋ฌธ์ž์—ด

multiLine = """This is multi line string""" print(type(multiLine)) print(multiLine) ''' This is multi line string '''



\n : ์ค„๋ฐ”๊ฟˆ ์ œ์–ด๋ฌธ์ž

multiLine2 = "This \nis multi line \nstring" print(multiLine2) ''' This is multi line string '''


SQL๋ฌธ

query = '''select * from emp where deptno = 1001 order by sal desc''' print(query)


indexing / slicing ๊ฐ€๋Šฅ

print(lineStr)


์™ผ์ชฝ ๊ธฐ์ค€ ์ƒ‰์ธ : 0

lineStr[0] #t lineStr[0:4] #this lineStr[:4] #this


์˜ค๋ฅธ์ชฝ ๊ธฐ์ค€ ์ƒ‰์ธ : -1

lineStr[-1] #g lineStr[-6:] #string lineStr[-11:-7] #line


slicing : new object

subStr = lineStr[:4] print(subStr) #this


๊ฐ์ฒด ์ฃผ์†Œ

id(subStr) #2857529890416 id(lineStr) #2857529890416




3. ๋ฌธ์ž์—ด ์—ฐ์‚ฐ : +, *

print('python' + ' program') #python program ๊ฒฐํ•ฉ์—ฐ์‚ฐ์ž print('-' * 5) #-----




4. ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ํ•จ์ˆ˜

type(lineStr) #str len(lineStr) #23


ํ˜•์‹) ๊ฐ์ฒด.ํ•จ์ˆ˜()

testStr = "My name is hong!" print(testStr) #My name is hong! type(testStr) #str


1) ๋ฌธ์ž ์ฐพ๊ธฐ

testStr.find('z') #-1 ์ƒ‰์ธ ๋ฐ˜ํ™˜. ๋ฌธ์ž ์—†์Œ testStr.find('m') #5 ์ƒ‰์ธ ๋ฐ˜ํ™˜ testStr.find('n') #3 ์ตœ์ดˆ๋กœ ๋ฐœ๊ฒฌ๋œ ์ƒ‰์ธ ๋ฐ˜ํ™˜ testStr.count('n') #2 ๊ฐœ์ˆ˜ ๋ฐ˜ํ™˜


2) ๋ฌธ์ž ์œ ํ˜• ๊ตฌ๋ถ„

testStr.isalpha() #False ์•ŒํŒŒ๋ฒณ์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จ testStr.isascii() #True ์˜๋ฌธ์ž/ํŠน์ˆ˜๋ฌธ์ž/์ˆซ์ž testStr.isalnum() #False ์ˆซ์ž testStr.islower() #False


3) ๋Œ€์†Œ๋ฌธ ์ฒ˜๋ฆฌ

testStr.upper() #'my name is hong!' ์ผ๊ด„ ๋Œ€๋ฌธ์ž ๋ณ€๊ฒฝ testStr.lower() #'my name is hong!' ์ผ๊ด„ ์†Œ๋ฌธ์ž ๋ณ€๊ฒฝ print(testStr) testStr2 = testStr.lower() print(testStr2)


4) ์ ‘๋‘์–ด ํŒ๋‹จ -> T/F ๋ฐ˜ํ™˜

testStr.startswith('My') #True testStr.startswith('Me') #False


5) ๋‹จ์–ด ๊ต์ฒด

testStr = testStr.replace('!','') #๋А๋‚Œํ‘œ ์‚ญ์ œ testStr #'My name is hong' testStr = testStr.replace(' ','') #๊ณต๋ฐฑ ์‚ญ์ œ testStr #'Mynameishong'





5. ๋ฌธ์ž์—ด ๋ถ„๋ฆฌ(split) & ๊ฒฐํ•ฉ(join)
๋ฌธ๋‹จ <-> ๋ฌธ์žฅ ๋ถ„๋ฆฌ
๋ฌธ์žฅ <-> ๋‹จ์–ด ๋ถ„๋ฆฌ

print(multiLine) ''' This is multi line string '''


1) ๋ฌธ๋‹จ -> ๋ฌธ์žฅ split

sent = multiLine.split(sep='\n') #์ค„๋ฐ”๊ฟˆ์„ ๊ธฐ์ค€์œผ๋กœ separateํ•˜๊ฒ ๋‹ค sent['This', 'is multi line', 'string'] print('๋ฌธ์žฅ ๊ฐœ์ˆ˜:', len(sent)) #๋ฌธ์žฅ ๊ฐœ์ˆ˜: 3


2) ๋ฌธ๋‹จ -> ๋‹จ์–ด split

word = multiLine.split() #sep=' ' : ๊ณต๋ฐฑ ์ƒ๋žต ๊ฐ€๋Šฅ word #['This', 'is', 'multi', 'line', 'string'] print('๋‹จ์–ด ๊ฐœ์ˆ˜:', len(word)) #๋‹จ์–ด ๊ฐœ์ˆ˜: 5


3) ๋ฌธ์ž์—ด ๊ฒฐํ•ฉ(join)
ํ˜•์‹) '๊ตฌ๋ถ„์ž'.join(object)

lines = ''.join(word) print(lines)






escape

escape ๋ฌธ์ž & ๊ธฐ๋Šฅ ์ฐจ๋‹จ
- escape ๋ฌธ์ž : ํŠน์ˆ˜๊ธฐ๋Šฅ์˜ ๋ฌธ์ž(\n, \t, \b, \r, '', "")
- ๊ธฐ๋Šฅ ์ฐจ๋‹จ : escape ๋ฌธ์ž๋ฅผ ์ถœ๋ ฅ or ๊ฒฝ๋กœ ์‚ฌ์šฉ ์‹œ

print('escape ๋ฌธ์ž') print('\n์ถœ๋ ฅ') # escape ๋ฌธ์ž ์ ์šฉ print('\\n์ถœ๋ ฅ') # ๊ธฐ๋Šฅ ์ฐจ๋‹จ1 print(r'\n์ถœ๋ ฅ') # ๊ธฐ๋Šฅ ์ฐจ๋‹จ2


๊ฒฝ๋กœ ํ‘œํ˜„

print('c:\python\test') # c:\python est print('c:\\python\\test') # c:\python\test print(r'c:\python\test') # c:\python\test print('c:/python/test')


ํŠน์ˆ˜๋ฌธ์ž : c:\'aa'\"abc.txt"\

print("c:\\\'aa\'\\\"abc.txt\"\\") # c:\'aa'\"abc.txt"\


file read

file = open(file = r'c:\itwill\3_python-i\test.txt', encoding='utf-8') print(file.read())

+ Recent posts