DAY 3

2025. 2. 20. 09:11·일지

파이썬

 

ㅇ비교연산자

<,<=,>,>= 

True/False

 

ㅇ문자열 자료형

문자열이란 문자,단어 등으로 구성된 문자들의 집합

큰따옴표,작은따옴표 모두 사용 가능

따옴표 연속 3개 사용 가능 """ㅇ"""

 

<문자열에 큰따옴표 포함하기>

1. 작따 안에 큰따를 넣는다.
say = ' "Python" ' 

 

2.역슬래시 사용

say = "\"python\""

 

<줄바꾸기>

1.이스케이프 코드 \n

2.따옴표3개 """ pyrhon """


<문자열 연산하기>

변수+변수

변수*정수

 

길이구하기:

a="Life"

print(len(a))

 

<인덱싱&슬라이싱>

a = "Life is too short, You need Python"     *맨처음은 0부터 시작

print(a[3])

e

 

print(a[-1]) <- 뒤에서부터 첫번째 문자

n

print(a[-5]) <- 뒤에서부터 다섯번째 문자

 

@문자열 슬라이싱

a에서 Life만 뽑아내는 방법

print(a[0]+a[1]+a[2]+a[3])

'Life'

또는

print(a[0:4]) <- 왜 3이 아니고 4일까?

왜냐면, 슬라이싱 기법 [시작번호:끝번호]로 지정할 때 끝번호에 해당하는 문자는 포함하지 않기 때문이다.

 

슬라이싱에서도 -기호 사용 가능!

a[19:-7]은 19번에서 -8번까지 출력

'You need'

 

ㅇ문자열 관련 함수들 Functions

count

a="hobby"
print(a.count('b'))
print(a.count('f'))

 

 

find

print(a.find('b'))
#print(a.find())
print(exam.find('short'))
print(a.find('a')) #없으면 -1 반환
#find함수는 첫번째 글자만 찾을수있음 (중복글자를 찾을수없음)

 

index

print(a.index('h'))
print(exam.index('need'))
#print(a.index('a')) <- index는 find와 달리 없으면 오류뜸

 

join

print(','.join('abcd'))
print(",".join(['a','b','c','d'])) #여러개를 따로따로 쓰려면 대괄호에 넣어야함 []

 

upper 대문자

lower 소문자

 

공백지우기 > strip,lstrip,rstrip

#왼쪽 공백 지우기
test = '   test   '
print(test.lstrip())

#오른쪽 공백 지우기
print(test.rstrip())

#양족 공백 지우기
print(test.strip())

 

replace

#문자열 바꾸기
leg='My leg is too long'
print(leg.replace("My" , "Your"))

 

split

#문자열 나누기
#print(leg.split())

 

<문자열에 있는 공백 다 지워보기>

exam = "Life is too short, you need python" #공백 다 지워보기
print(exam.replace(" ",""))
q1=exam[:4] + exam[5:7] + exam[8:11] + exam[12:18] + exam[19:22] + exam[23:27] + exam[28:]
print(q1)
print("".join((exam.split(" ")))) #이거 왜 되는지 복습할 것.

 

 

 

<f포매팅>

lucky_num = 10
lotto = f"오늘의 행운 번호 {lucky_num}입니다!" #에프포맷팅 *중간괄호는 쉬+괄호
#         ㄴ따옴표 앞에 f를 넣어야 {}중간괄호에 변수를 넣을수있음.
#lotto = "오늘의 행운번호 {}입니다."
print(lotto)
name = '박주영'
age = 29
print(f'나의 이름은 {name}입니다. 나이는 {age}세 입니다.')
print(f'나는 내년에 {age + 1}살이 된다.')
print('그녀의 이름은 {} 입니다. 나이는 {} 입니다.'.format(name, age))
#딕셔너리
dic = {'name2':'홍길동', 'age2':31}
print(f'그의 이름은 {dic["name2"]}입니다. 나이는 {dic["age2"]}입니다.')

 

<정렬>

# :<10 왼쪽정렬
# :>10 오른쪽정렬
# :^10 가운데정렬
# :=^ 가운데정렬 하고 =로 공백 채우기
# :=< 왼쪽정렬 하고 =로 공백 채우기

 

 

<input 함수>

name = input("이름을 입력해주세요! :")
hello = f"어서오세요, {name}님!"
print(hello)
#input함수는 항상 문자열을 뱉는다. 숫자를 써도 그것은 문자다.
#input() 함수는 항상 문자열을 반환하므로, 다른 자료형으로 사용하려면 형변환이 필요합니다.
age3 = int(input("나이를 입력하세요: ")) #아직은 함수에 함수를 넣지말자. 오류찾기 힘들다.
height = float(input("키를 입력하세요(cm): ")) #실수:float
print(f"당신은 {age3}살이고, 키는 {height}cm입니다.")

아직은 int(input) <이렇게 함수 안에 함수 넣지말자.

오류 찾기 힘들다.

 

아래처럼 쓰자.

age4 = input("숫자: ")
age4 = int(age4)
print(f'당신은 {age4 + 10}입니다.')

 

<배운거 응용해서 혼자 짜본 코딩>

# 이름을 입력해주세요. > 반갑습니다 ㅇㅇ님
# 영문명을 입력해주세요. > ㅇㅇ님의 영문명은 n자 입니다.
# 당첨이 되었는지 확인해보세요.
# 이벤트에 당첨되셨습니다. 축하합니다.

user_name = input("이름을 입력해주세요! :")
print(f"반갑습니다. {user_name}님!")
eng_name = input("영문명을 입력해주세요! :")
print(f"{user_name}님의 영문명은 {len(eng_name)}개 입니다.")

 

당첨이 되었는지 확인해보세요 < 이거는 내일 조건문 배우면 마저 짜보자.

 

 

 

 

 

 

 

 

 

@오전

a=1
b=2
#a=c
print(a)

print(4!=4.0)
print(4!=5)

#비교연산자 True/False *대문자
print(4<5)
print(4>5)
print(3<=3)
#print(4!=<1)
print(1>=100)
print(1<=100)
#

print(a>0 and b<0)
print(a>0 and b>0)
print(a>0 or b<0)

x=30
x+=30
print(x)

#문자열로 된 변수 3가지
#무의미한 이름X
hi="hello"
eng="abc"
num="12345"

print(hi*100)
#print(hi/2)
print(hi+eng)
#print(hi-eng)

head = "Python"
tail = " is fun!"
print(head+tail)
print(head+"hello") #="Python'+"hello" int=int
print(head,"hello")

do="do"
print(do*2)
#print("do"*2+do+1)
#TypeError: can only concatenate str (not "int") to str

print("="*50)
print("my pro")
print("="*50)

#print(1+"1")
print(1*"1")
print(100*"1")

print(len("my name is joo"))

#줄바꾸는법
print("hello,")
print("world")
print("hello, \nworld")
print("\"hello, \nworld")
print('"hello ')
print("""hello
world""")
# 쌍따옴표 3개쓰면 엔터로 줄바꿈 가능

# ㅇㅇㅇㅇ
# ㅇㅇㅇㅇ
# ㅇㅇㅇㅇ
#다 쓴다음에 싹다 드래그해서 컨+물음표 하면 주석 달림
print("="*100)
#문자열 인덱싱 (뽑는과정=인덱싱, 번호붙어진거=인덱스)
exam = "Life is too short, you need python"
print(exam[0])
print(exam[12])
#print(exam[234])
#print(exam[0]+[3])
#TypeError: can only concatenate str (not "list") to str
print(exam[0]+exam[3])
print(exam[-1]) #뒤에서부터

exam2= exam[0]+exam[1]+exam[2]+exam[3]
print(exam2)
print(exam[0:4])

print(exam[1+2])
print(exam[3+4])
print(exam[1-3])

print(exam[12:16])
print(exam[-5:-8]) #오류는 안나는데 아무것도 없음
print(exam[-2:-1])
print(exam[-10:-1])
print(exam[-2:8])

print(exam[0:4:2]) #슬리이싱=2칸씩 띄어서 인덱싱
print(exam[0:7:2])
print(exam[-1:-10:-1]) #역순출력

print(exam[:17])
print(exam[19:])
print(exam[:])
print(exam[19:-7])
print(exam[-7:]) #
print(exam[:-7]) #처음부터 -7까지만 인덱싱
print(exam[:-6])

print(len(exam))

print(exam[10])
print(exam[8:11])
print(exam[12:17])
print(exam[-6])
print(exam[-7])

exam = "Life is too short, you need python"

print(exam[:4])
print(exam[-4:])
print(exam[:-2])

=========================================================================================

@오후

문자열 관련 함수들 Functions
a="hobby"
print(a.count('b'))
print(a.count('f'))

print(exam.count('fe'))

#함수는 input(입력)->output(출력)

print(print)
# a.count()
# TypeError: count() takes at least 1 argument (0 given)

print(a.find('b'))
#print(a.find())
print(exam.find('short'))
print(a.find('a')) #없으면 -1 반환
#find함수는 첫번째 글자만 찾을수있음 (중복글자를 찾을수없음)

print(a.index('h'))
print(exam.index('need'))
#print(a.index('a')) <- index는 find와 달리 없으면 오류뜸

print(','.join('abcd'))
print(",".join(['a','b','c','d'])) #여러개를 따로따로 쓰려면 대괄호에 넣어야함 []

#대문자로 바꾸기
hi = 'hi'
print(hi.upper()) #공백 호출

#소문자로 바꾸기
Hi = 'Hi'
print(Hi.lower())

#왼쪽 공백 지우기
test = '   test   '
print(test.lstrip())

#오른쪽 공백 지우기
print(test.rstrip())

#양족 공백 지우기
print(test.strip())

#문자열 바꾸기
leg='My leg is too long'
print(leg.replace("My" , "Your"))

#문자열 나누기
#print(leg.split())

apple="appleautoaimasus"
print(apple.split('a'))
print(apple.split())
# apple2="aappleaautoaaimaasus"
# print(apple2.split('a')) <<나중에 a가 없어지지 않게 나누는 방법은 반복문에서 배우자

exam = "Life is too short, you need python" #공백 다 지워보기
print(exam.replace(" ",""))

q1=exam[:4] + exam[5:7] + exam[8:11] + exam[12:18] + exam[19:22] + exam[23:27] + exam[28:]
print(q1)

print("".join((exam.split(" ")))) #이거 왜 되는지 복습할 것.

print(test.lstrip().rstrip())
print(type(test.lstrip())) #type함수는 어떤 자료형인지 알수있음 *str = string = 문자열

#f포매팅
lucky_num = 10
lotto = f"오늘의 행운 번호 {lucky_num}입니다!" #에프포맷팅 *중간괄호는 쉬+괄호
#         ㄴ따옴표 앞에 f를 넣어야 {}중간괄호에 변수를 넣을수있음.
#lotto = "오늘의 행운번호 {}입니다."
print(lotto)

name = '박주영'
age = 29
print(f'나의 이름은 {name}입니다. 나이는 {age}세 입니다.')
print(f'나는 내년에 {age + 1}살이 된다.')
print('그녀의 이름은 {} 입니다. 나이는 {} 입니다.'.format(name, age))

#딕셔너리
dic = {'name2':'홍길동', 'age2':31}
print(f'그의 이름은 {dic["name2"]}입니다. 나이는 {dic["age2"]}입니다.')

# :<10 왼쪽정렬
# :>10 오른쪽정렬
# :^10 가운데정렬
# :=^ 가운데정렬 하고 =로 공백 채우기
# :=< 왼쪽정렬 하고 =로 공백 채우기

#input함수
# name = input("이름을 입력해주세요! :")
# hello = f"어서오세요, {name}님!"
# print(hello)
# #input함수는 항상 문자열을 뱉는다. 숫자를 써도 그것은 문자다.
# #input() 함수는 항상 문자열을 반환하므로, 다른 자료형으로 사용하려면 형변환이 필요합니다.

# age3 = int(input("나이를 입력하세요: ")) #아직은 함수에 함수를 넣지말자. 오류찾기 힘들다.
# height = float(input("키를 입력하세요(cm): "))
# print(f"당신은 {age3}살이고, 키는 {height}cm입니다.")

age4 = input("숫자: ")
age4 = int(age4)
print(f'당신은 {age4 + 10}입니다.')

#안녕하세요 주영님. 당신의 행운번호는 ㅇ입니다.

'일지' 카테고리의 다른 글

DAY 6 [딕셔너리]  (0) 2025.02.25
DAY 6 [리스트]  (0) 2025.02.25
DAY 5 [반복문/while/for]  (3) 2025.02.24
DAY 4  (3) 2025.02.21
DAY 1  (1) 2025.02.18
'일지' 카테고리의 다른 글
  • DAY 6 [리스트]
  • DAY 5 [반복문/while/for]
  • DAY 4
  • DAY 1
joo_coding
joo_coding
2025.02.18~
  • joo_coding
    주코딩일지
    joo_coding
  • 전체
    오늘
    어제
    • 분류 전체보기 (219)
      • 일지 (19)
      • 계획표 (7)
      • 프로젝트 (6)
      • C언어 (35)
        • 연습장 (12)
      • C++ (3)
      • C# (34)
      • Python (28)
        • 연습장 (11)
      • TCP IP (4)
      • DB (2)
      • ubuntu (1)
      • Git (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    c언어 #vscode #gcc #윈도우 #c언어윈도우 #gcc윈도우 #vscode윈도우 #c #c++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
joo_coding
DAY 3
상단으로

티스토리툴바