no image
Day2. 변수와 함수, 연산자
* 새롭게 배운 내용만 적었습니다. 교재는 '혼자 공부하는 파이썬' A. 변수 변수: 값을 지정할 때 사용하는 식별자 명시적 변수 선언방식: C, JAVA 묵시적(할당형) 변수 선언방식: python 변수 참조: 변수 안에 있는 값을 사용하는 것 읽기 참조: 값을 출력 #print(참조) 쓰기 참조: 값을 할당 #변수 = 값 복합대입 연산자: 사칙연산자 + 할당 매개변수(parameter)와 인자·인수(argument)의 차이 - 매개변수: 함수의 정의 function(x, y): #x, y가 매개변수 ruturn x + y - 인자(인수): 함수의 호출 a = function(2, 3) #2, 3이 인수!​ B. 함수 python 내장함수 https://docs.python.org/ko/3.9/libr..
2024.01.03
no image
Day1. 자료형
A. 파이썬 시작하기 프로그램 - Pro + Gram - 미리 작성된 것을 의미한다. 컴퓨터 프로그램 - 컴퓨터가 무엇을 해야 할지 미리 작성한 진행 계획이다. 프로그래밍 언어 - 컴퓨터는 0과 1로 이루어진 이진 숫자만 이해한다. - 이런 숫자로 이루어진 코드를 이진 코드라고 한다. - 사람이 이해하기 쉬운 언어로 프로그램을 만들기 위해 프로그래밍 언어를 만들었다. 프로그래밍 언어로 작성된 소스코드 → 컴파일러(인터프리터) → 실행 *컴파일러 방식: 소스코드 한번에, 인터프리터 방식: 소스코드 한줄씩 Python 장단점 쉽다 다양한 분야에서 사용 : 웹 서버, 해킹 도구, IoT, 인공지능 대부분의 운영체제에서 동일하게 사용 그러나 느리다. B. PowerShell 폴더에 Shift + 우클릭 pyth..
2024.01.02

* 새롭게 배운 내용만 적었습니다. 교재는 '혼자 공부하는 파이썬'

 

 

A. 변수

변수: 값을 지정할 때 사용하는 식별자

  • 명시적 변수 선언방식: C, JAVA
  • 묵시적(할당형) 변수 선언방식: python

변수 참조: 변수 안에 있는 값을 사용하는 것

  • 읽기 참조: 값을 출력    #print(참조)
  • 쓰기 참조: 값을 할당    #변수 = 값

복합대입 연산자: 사칙연산자 + 할당

매개변수(parameter)와 인자·인수(argument)의 차이
- 매개변수: 함수의 정의
function(x, y): #x, y가 매개변수
	ruturn x + y

- 인자(인수): 함수의 호출
a = function(2, 3) #2, 3이 인수!​

 

 

B. 함수

python 내장함수

https://docs.python.org/ko/3.9/library/functions.html?highlight=format

 

Input()

  • 입력 자료형 

type()

  • 함수를 통해 입력한 자료형을 알아볼 수 있다.

format()

  • 숫자를 문자열로 변환한다.
string_a = "{}".format(10)

print(string_a)
print(type(string_a))
  • 다양한 기능이 있다.
#정수
output_a = "{:d}".format(52)

#특정 칸에 출력하기
output_b = "{:5d}".format(52)
output_c = "{:10d}".format(52)

#빈칸을 0으로 채우기
output_d = "{:5d}".format(52)
output_e = "{:5d}".format(-52)

print("#기본\n", output_a)
print("#특정 칸에 출력하기\n", output_b, "\n", output_c)
print("#빈칸을 0으로 채우기\n", output_d, "\n", output_e)

#정수
output_f = "{:+ d}".format(52)
output_g = "{:+ d}".format(-52)
output_h = "{:5d}".format(52) #5칸 안에 채워넣어
output_i = "{:+5d}".format(-52)
output_j = "{:=+5d}".format(52)
output_k = "{:=+5d}".format(-52)
output_l = "{:+05d}".format(52)
output_m = "{:+05d}".format(-52)

print("#조합하기")
print(output_h)
print(output_i)
print(output_j)
print(output_k)
print(output_l)
print(output_m)

#부동소수점
output_n = "{:f}".format(52.273)
output_o = "{:5.3f}".format(52.273)

print(output_n)
print(output_o)

52.273000

52.273

 

문자열 함수

비파괴적 함수

  • 원본은 변하지 않는 함수
  • upper(): 알파벳 대문자변경
  • lower(): 알파벳 소문자변경 
string = "hello"

string.upper()
print("A 지점:", string)

print("B 지점:", string.lower())

A 지점: hello

B 지점: hello

 

strip(): 문자열 양옆 공백 제거

  • lstrip(): 왼쪽 공백 제거
  • rstrip(): 오른쪽 공백 제거 

islnum(): 문자열이 알파벳 또는 숫자로만 구성되어있는지 확인

isalpha(): 문자열이 알파벳으로만 구성되어있는지 확인

isidentifier(): 문자열이 식별자로 사용할 수 있는 것인지 확인

isdecimal(): 문자열이 정수 형태인지 확인

isdigit(): 문자열이 숫자로 인식될 수 있는지 확인

isspace(): 문자열이 공백으로만 구성되어 있는지 확인

islower(): 문자열이 소문자로만 구성되어 있는지 확인

isupper(): 문자열이 대문자로만 구성되어 있는지 확인

출력은 True of False!

 

find(): 왼쪽부터 찾아서 처음 등장하는 위치를 찾는다.

rfind(): 오른쪽부터 찾아서 처음 등장하는 위치를 찾는다.

 

in 연산자: 문자열 내부에 어떤 문자열이 있는지 확인

print("안녕" in "안녕하세요")

결과: True

 

split(): 문자열 자르기. 문자열 안의 글자를 인수 기준으로 잘라서 리스트로 만든다.

a = "10 20 30 40 50".split(" ")
print(a)

결과: ['10', '20', '30', '40', '50']

 

 


 

 

C. 연산자

 

not 연산자: 단항 연산자, 참과 거짓을 바꿀 때 사용

print(not True)

결과: False

 

and 연산자

좌변 우변 결과
T T T
T F F
F T
F F

 

or 연산자

좌변 우변 결과
T T T
T F
F T
F F F

 

종속문장: 조건식의 연산결과가 참일 때  수행하는 문장

 

datetime 모듈

import datetime

now = datetime.datetime.now()

print("{}년 {}월 {}일 {}시 {}분 {}초".format(
    now.year, 
    now.month, 
    now.day,
    now.hour,
    now.minute,
    now.second
))

1 월
3 일
17 시
5 분
16 초

 

 

'Python' 카테고리의 다른 글

Day6. 객체지향 프로그래밍  (0) 2024.01.16
Day5. 함수  (1) 2024.01.08
Day4. 딕셔너리와 반복문  (1) 2024.01.05
Day3. 조건문과 리스트  (2) 2024.01.04
Day1. 자료형  (1) 2024.01.02

Day1. 자료형

0ㅑ채
|2024. 1. 2. 14:04

 

 

A. 파이썬 시작하기

프로그램 

- Pro + Gram

- 미리 작성된 것을 의미한다. 

 

컴퓨터 프로그램

- 컴퓨터가 무엇을 해야 할지 미리 작성한 진행 계획이다.

 

프로그래밍 언어

- 컴퓨터는 0과 1로 이루어진 이진 숫자만 이해한다. 

- 이런 숫자로 이루어진 코드를 이진 코드라고 한다. 

- 사람이 이해하기 쉬운 언어로 프로그램을 만들기 위해 프로그래밍 언어를 만들었다.

 

프로그래밍 언어로 작성된 소스코드 → 컴파일러(인터프리터) → 실행

*컴파일러 방식: 소스코드 한번에, 인터프리터 방식: 소스코드 한줄씩

 

Python 장단점

  1. 쉽다
  2. 다양한 분야에서 사용 : 웹 서버, 해킹 도구, IoT, 인공지능
  3. 대부분의 운영체제에서 동일하게 사용
  • 그러나 느리다.

 

 

 

B.  PowerShell

폴더에 Shift + 우클릭

python 파일명.py

 

파이썬 안에 있는 내용이 실행되어 나타남!

처음에 안돼서 찾아보니까 파일 이름에 확장명이 없었다.
ls : 폴더에 어떤 파일이 있는지 목록으로 확인

.py 확장명 붙이기!

 

 

 

C. 파이썬 용어

- 문장: 실행할 수 있는 코드의 최소 단위다.

-표현식: 어떠한 값을 만들어 내는 간단한 코드다.

 

-키워드: (=예약어) 변수명·함수명·클래스명으로 쓸 수 없다.

 

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 
'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 
'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 
'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']


-식별자: 이름을 붙일 때, 주로 변수 또는 함수 이름 등으로 사용한다.

  • 키워드 사용 불가
  • 특수 문자는 언더바(_)만 허용
  • 숫자로 시작 불가
  • 공백 불가
  • 스네이크 케이스(snake_case) : 함수(), 변수
  • 캐멀 케이스 (CamelCase): 클래스

 

-출력: print()

  • 인수: 괄호 안에 있는 것
    • 인수가 여러개인 출력도 가능 (2024, "year", "입니다")
  • 줄바꿈: 괄호 안에 인수가 없을 때 그냥 줄바꿈됨!

 

 


 

D. 자료형

 

문자열 (String)
  • 큰따옴표나 작은따옴표나 상관없다.
  • 문자열 내부에 따옴표를 사용할 경우, 작은따옴표를 사용해야한다.
  • 혹은 이스케이프 문자를 사용한다.
print(""안녕하세요"라고 말했습니다") #오류
print("'안녕하세요'라고 말했습니다") #가능
print("\"안녕하세요\"라고 말했습니다") #가능

 

더보기

> 이스케이프 문자

print("GURUM\t3\tGANGSEO")
print("GURUM1\t3\tGANGSEO")
print("GURUM12\t3\tGANGSEO")
print("GURUM123\t3\tGANGSEO")
8글자까지만 가능하다
print("""자동으로
줄바꿈됨""")

 

[인덱싱]

print("안녕하세요"[0]) #안
print("안녕하세요"[-1]) #요
print("안녕하세요"[-5]) #안

 

[슬라:이싱]

print("안녕하세요"[0:2]) #안녕
print("안녕하세요"[1:4]) #녕하세

 

 

숫자형

 

정수 나누기 연산자 //

print("3//2= ", 3//2) #3//2= 1
print("2**2= ", 2**2) #2**2= 4

 

 

데이터 분류

mutable: 변경 가능한 데이터 (variable)

  • 동시성 제어가 안됨. 
  • 2002년 한게임 포커 돈복사 버그 사태
  • 그래서 메소드를 통해 제어한다. (접근자 메소드)

immutable: 변경 불가능한 데이터 (constant + literal)

*literal: 우리가 직접 작성한 값

  • 동시에 작업이 가능.

 

scala data: 1개의 데이터. 참조 자체가 데이터 (value type)

vector data: 0개 이상의 데이터 모임. 참조가 데이터의 시작 위치를 의미하며 index나 key를 이용해서 접근 (reference type)

 

정형 데이터: 모양이 동일한 데이터, 테이블 형태의 데잍

비정형 데이터: 모양이 일정하지 않은 데이터 (ex.텍스트나 음성)

반정형 데이터: 대부분의 경우 텍스트인데 메타 데이터를 확인하면 정형 데이터로 변경 가능한 데이터 (ex. csv, json, txt, xml, yaml)

 

 

 

 

'Python' 카테고리의 다른 글

Day6. 객체지향 프로그래밍  (0) 2024.01.16
Day5. 함수  (1) 2024.01.08
Day4. 딕셔너리와 반복문  (1) 2024.01.05
Day3. 조건문과 리스트  (2) 2024.01.04
Day2. 변수와 함수, 연산자  (1) 2024.01.03