파이썬은 모든 변수가 객체 이다. 그 객체에 들어가는 값에 따라 type이 변하는것 같다.

변수에 숫자를 넣으면 숫자 객체가 되고, 변수에 문자를 넣으면 문자 객체가 되고, 변수에 리스트를 넣으면 리스트 객체가 된다.

 

  my_int = 7
  print(type(my_int))
  
  my_float = 1.23
  print(type(my_float))
  
  my_int = 100 + 999999999999999999999999999999999999999999999999
  print('my_int = ' + str(my_int))

출력값은

<class 'int'>
<class 'float'>
my_int = 1000000000000000000000000000000000000000000000099

 

type()함수는 변수의 형(클래스)가 무엇인지 확인 할 수 있다.

즉 my_int는 int형 객체가 되었고,  my_int는 int형 클래스에서 생성된 객체라고 생각하면 될것 같다.

 

my_float는 float형 객체가 되었고,

파이썬에서 int형은 long형까지 포함한다고 생각하면 된다. 아주 큰 자리수의 숫자를 가질 수 있다. 100자리의 자리수도 가능하다.

 

 

 

  a1 = 'aaa'
  a2 = 'bbb'
  a3 = a1 + a2
  print(a3)
  print(type(a3))

출력값은 

aaabbb
<class 'str'>

 

  greeting = 'HELLO WORLD!'
  print(greeting[0],'\t',greeting[1],'\t',greeting[2],'\t',greeting[3],'\t',greeting[4]) # H    E   L   L   O
  print(greeting[0:5]) # HELLO
  print(greeting[:5]) # HELLO
  print(greeting[6:]) # WORLD!
  print(greeting[-3:]) # LD!
  print(greeting[6:-3]) # WOR
  print(len(greeting)) # 문자열 길이 12
  print('Input your age !!')
  your_age = input() # 입력 대기
  print('Your age is ', your_age)

문자열을 원하는 위치에서 자를 수 있다.

greeting[0:5] 는 문자열의 0번째 자리수부터 5번째 자리수 앞까지를 가리킨다. (5번째 자리수는 포함하지 않는다.) (문자열은 0번째 자리부터 시작한다.) 

 

문자열을 입력받기 위해서는 input() 을 이용하면 된다.

 

  # 문자열 나누기 : split()
  portal_site = 'naver daum nate'
  mylist = portal_site.split(' ')
  print(mylist) # ['naver', 'daum', 'nate']
  print(mylist[0]) # naver
  city_list = ['Seoul', 'Busan', 'Jeju', 'kimpo']
  city_string = ', '.join(city_list)
  print(city_string)
  print('Hello' in 'Hello World') # True
  print('대문자로 변환', 'Hello World'.upper()) # 대문자로
  print('소문자로 변환','Hello World'.lower()) # 소문자로

출력값은

['naver', 'daum', 'nate']
naver
Seoul, Busan, Jeju, kimpo
True
대문자로 변환 HELLO WORLD
소문자로 변환 hello world

 

@ 문자열 관련 함수
- len : 문자길이, len(mystr)
- split : 구분자로 문자열 분리, 리턴값이 리스트, mystr.split(' ')
- join : 문자열로 결합, 리스트에 있는 값들을 결합해서 하나의 스트링으로, aaa = ', '.join(my_list)
- in, not in : 멤버십 연산자, return값은 True 나 False
- upper : 대문자로, mystr.upper()
- lower() : 소문자로, mystr.lower()
- isupper() : 대문자인지 확인, mystr.isupper(), return값은 True 나 False
- islower() : 소문자인지 확인, mystr.islower(), return값은 True 나 False
- isX 문자열 함수
isalpha() : 문자열로만 구성시 True
isalnum() : 문자 또는 숫자로만 구성시 True, 문자만 있어도 True, 숫자만 있어도 True, 문자와 숫자 있어도 True
isdecimal() : 숫자로만 구성시 True, 주어진 문자열이 int형으로 변환이 가능한지 알아내는 함수
isnumeric() : 숫자로만 구성시 True, 숫자값 표현에 해당하는 문자열까지 인정한다. 제곱근 및 분수, 거듭제곱 특수문자도 True
isspace() : 공백으로만 구성시 True
istitle() : 문장내 모든 단어가 대문자로 시작되면 True, This Is Title Calse : True, This Is NOT Title Calse : False, This is Title Calse : False, This Is Title Calse 123 : True
- startswith() : 특정문자열로 시작되면 True, 'Hello world'.startswith('Hello') : True
- endswith() : 특정문자열로 끝나면 True, 'Hello world'.endswith('world') : True

 

@ 문자열 포매팅
- 데이터 값을 문자열에 끼워 넣는(interpolate) 방법을 제공
- 파이썬2 버전
엣 스타일 : %
'my home is %s gu %s dong %s bunji' % (gu, dong, bunji)
%s : 문자열, %d : 정수, %f : 실수
 
- 파이썬3 버전
새로운 스타일 : {}와 format
'{} {} {}'.format(gu, dong, bunji)
'{2} {0} {1}'.format(gu, dong, bunji)
'{a} {b} {c}'.format(a=gu, b=dong, c=bunji)
d = {'gu':'aaa', 'dong':'bbb', 'bunji':'ccc'}
'{0[gu]} {0[dong]} {0[bunji]}'.format(d)
 
- 더 새로운 버전
f'{gu} {dong} {bunji}'
 
 
 
gu='seocho'
dong='yangjae' 
bunji=123
a = '{} {} {}'.format(gu, dong, bunji)
b= '{2} {0} {1}'.format(gu, dong, bunji)
c = '{gu1} {dong1} {bunji1}'.format(gu1=gu, dong1=dong, bunji1=bunji)
mydict = {'gu' : 'seocho', 'dong' : 'yangjae', 'bunji' : 123}
d= '{0[gu]} {0[dong]} {0[bunji]}'.format(mydict)
e= f'{gu} {dong} {bunji}'

print(a) # seocho yangjae 123
print(b) # 123 seocho yangjae
print(c) # seocho yangjae 123
print(d) # seocho yangjae 123
print(e) # seocho yangjae 123

 

if 문으로 값을 비교할때 어떤값이 False인지 기억할 필요가 있다.

@ False인 값들
- None
- 0
- 0.0
- '' ==> 빈 문자열
- [] ==> 빈 리스트
- () ==> 빈 튜플
- {} ==> 빈 딕셔너리 

 

소스 링크

https://replit.com/@dhshin38/Tutorial-Python#num_char.py

 

Loading...

Replit is a simple yet powerful online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in 50+ programming languages.

replit.com

 

'Python' 카테고리의 다른 글

Python 정규식  (0) 2022.01.15
Python list, tuple, dictionary, 리스트, 튜플, 딕셔너리  (0) 2022.01.15
Python 날짜, 스케쥴, process  (0) 2022.01.15
Python 특징  (0) 2022.01.15
Python 개발 환경  (0) 2022.01.15

+ Recent posts