Java&Spring

[파이썬] 기초 정리

ZZJJing 2020. 12. 9. 13:32

- 공부한거 정리 요약 - 

 

● 문장 끝에 ; 사용하지 않는다. 

 

● 변수타입 설정이 필요없다.  그냥 변수명 = 타입 쓰면됨 

<결과>

 

● 자료구조  - 리스트, 튜플, set  ( )로만 묶어주면 형변환 가능함.  

<결과>

 

 

● 리스트  [ ] 

- print(리스트명) 으로 출력하면 → [ ] 달고 나온다.

food = ["우유", "딸기", "초콜렛"]
print(food)

#  몇 번째 인덱스인가 
print(food.index("딸기"))
# print(subway.index("딸"))   #없는거 검색하면 에러남 ~~ is not list

food.append("시리얼")  # 맨뒤에 추가 
food.insert(1, "포도")   #위치 지정해 추가 
print(food)

# 뒤에서 하나씩 꺼내고 삭제 
print(food.pop())

# 같은 것 구하기 
food.append("우유")
print(food.count("우유"))

# ASC 정렬
num_list = [5,2,4,3,1]
num_list.sort()
print(num_list)

# DESC 정렬 
num_list.reverse()
print(num_list)

# 리스트 모두지우기 
num_list.clear()
print(num_list)

# 다양한 자료형 함께 사용 가능 
mix_list = ["바나나", 20, True]
print(mix_list)

# 리스트확장 
num_list.extend(mix_list)
print(num_list)

 

 

 

● 사전형(딕셔너리형)  { } 

- 중복이 불가능함 

- key : value 값으로 정의 

 

#사전 - 중복 불가 {} 
cabinet = {3:"유재석" , 100 : "서장훈", "A-3" :"바나나"}
print(cabinet[100])
print(cabinet.get(3))

# print(cabinet[5])  # 없는 값이면 KeyError: 5 에러 발생후 종료 
# print(cabinet.get(5))  # None  찍고 다음 작업 진행 
print(cabinet.get(5, "사용가능"))  # 5번 값이 없으면 사용가능으로 대체 
print(3 in cabinet)  # True / False 둘 중 하나 출력 
print(cabinet["A-3"])  # 스트링은 꼭 " " 처리해야함 

# 값 넣기 
cabinet["C-20"] = "이수근"
cabinet["c-20"] = "김종국"  # 대소문자 다름 
print(cabinet)

# 값 삭제 
del cabinet["c-20"]
print(cabinet)

print(cabinet.keys())  # 키 값만 출력 
print(cabinet.values()) # 값만 출력 
print(cabinet.items()) # 쌍으로 출력 
cabinet.clear()   #사전 삭제 
print(cabinet)

 

 

 

● 튜플 ( ) 

- 절대 변경되지 않는 목록 

#  튜플을 이용해서 한번에 선언

(name, age, hobby) = ("김종국", 20, "coding")

print(name, age, hobby)

- 이렇게 한번에 선언도 가능함 

 

 

 

● 집합 { } 

- 딕셔너리형 처럼 생긴 리스트 

- 중복 허용되지 않으며, 순서가 없어서 뒤죽박죽 나옴 

# 집합 (set) / 중복 안됨, 순서 없음 

my_set ={1,2,3,3,3,4}
print(my_set)

java = {"유재석", "김종국", "양세형"}
python = set(["유재석","박명수"])

# 교집합 (java랑 python다 할 수 있는 개발자)
print(java & python)
print(java.intersection(python))

# 합집합 
print(java | python)
print(java.union(python))

# 차집합 (java는 할 수 있지만 python은 할 줄 모르는 개발자)
print(java - python)
print(java.difference(python))

# set에 값 추가 
python.add("서장훈")
print(python)

# set에 값 삭제 
python.remove("서장훈")
print(python)

 

 

 

● print 출력 

# 방법1
print("나는 %d살입니다." % 20)
print("나는 %s을 좋아해요." % "파이썬")
print("나는 %s색과 %s색을 좋아해요." %("blue" , "red"))

# 방법2 
print("나는 {}살입니다." .format(20))
print("나는 {1}색과 {0}색을 좋아해요." .format("blue" , "red"))

# 방법3
print("나는 {age}살이며, {color}색을 좋아해요." .format(age = 20, color = "red"))

# 방법4 (v3.6 이상~)
age = 20 
color = "red"
print(f"나는 {age}살이며, {color}색을 좋아해요.")

 

 

● 출력 포맷 

<결과>

 

 

● 탈출문자 

# 탈출문자 
print("백문이 불여일견 \n백견이 불여일타")
print('저는 "나도코딩" 입니다.')
print("저는 \"나도코딩\" 입니다.")   

print("D:\pythonWorkspace")

#\r : 커서를 맨 앞으로 이동 해서 덮어씀 
print("Red Apple\rPine")

# \b : 백스페이스 (한 글자 삭제) 
print("Redd\bApple")

#Quiz ) 사이트별로 비밀번호를 만들어 주는 프로그램을 작성하시오.  
naver = "http://naver.com" 

r = naver[7:]
print(r)
b = r[:-4]
print(b)
c = b[:3]

pwd = c+ len(b)+b.count("e")+"!"
print(pwd)

url = "http://naver.com" 
my_str = url.replace("http://","")  #규칙1
my_str = my_str[:my_str.index(".")]  #규칙2
print(my_str)

password = my_str[:3] + str(len(my_str)) + str(my_str.count("e")) + "!"
print("{0} 의 비밀번호는 {1} 입니다." .format(url, password))

 

 

● 반복문 - for문

파이썬은 기본적으로 띄어쓰기가 기준이 된다. 

 

한줄 for 문 : list안에서도 사용가능 

 

 반복문 - while문

 

 

 함수 

- def 로 선언한다. (대문자 안씀)

- 가변인자 *붙이면된다. 

- 전역변수 사용방법 알아두기 (전역변수는 최대한 안쓰는게 좋음) 

 

 

공부한곳 ✧٩(`·ω·´)و✧

나도코딩 

https://www.youtube.com/channel/UC7iAOLiALt2rtMVAWWl4pnw

 

나도코딩

코딩, 쉽고 재미있게 "무료"로 배우세요

www.youtube.com