개발자 하고 싶다!!!

7. 논리 연산자

1_Python2018. 11. 11. 16:46

1. 공부한 내용

 1) 반복되는 조건문을 좀 더 간결하게 정리할 수 있는 논리 연산자에 대한 이해 (or, and, not)

 2) or 논리 연산자를 통해 각각의 다른 유저 정보 확인하는 어플 작성

 3) and 논리 연산자를 통해 같은 유저의 아이디 비밀번호 정보 확인하는 어플 작성


2. 실습 내용 

 입력 코드

결과 

 설명

in_str=input("아이디를 입력해주세요. \n")

real_har="har"

real_space="space"

if real_har == in_str or real_space == in_str:

    print("Hello!, "+in_str)

else:

    print("Who are you?")

아이디를 입력해주세요

(입력) har

(출력) Hello!, har

아이디를 입력해주세요

(입력) space

(출력) Hello!, space

아이디를 입력해주세요

(입력) asdjsald
(출력) Who are you?

조건문에서 2개의 조건 중 하나가 True일 때,

같은 출력값을 나오게 하더라도 if, elif, else를 사용해야 하지만,

논리 연산자 OR를 통해 elif 부분을 생략,

if 조건문에 2개 이상의 조건 중 1개만 True 일 때의 출력값을

나오게 할 수 있음

(즉, OR를 사용하면 조건은 2가지, 출력은 1가지)

input_id=input("아이디를 입력해주세요. \n")

input_pwd=input("비밀번호를 입력해주세요. \n")

real_id="har"

real_pwd="11"

if real_id == input_id and real_pwd == input_pwd:

    print("Hello!")

else:

    print("로그인에 실패했습니다.")

1. 정상 로그인

아이디를 입력해주세요.

(입력) har

비밀번호를 입력해주세요.

(입력) 11

(출력) Hello!


2. 아이디 혹은 비밀번호가 잘못된 경우

아이디를 입력해주세요.

(입력) asdsads

비밀번호를 입력해주세요.

(입력) 11

(출력) 로그인에 실패했습니다.


아이디를 입력해주세요.

(입력) har

비밀번호를 입력해주세요.

(입력) asdasd

(출력) 로그인에 실패했습니다.

조건문에서 2개의 조건을 둘 다 True일 때,

보통 조건문으로는 하나의 if문 안에 또 다른 if문이 필요하지만,

논리 연산자 AND를 통해 2개인 if문을 1개로 생략하여

조건문 전체를 짧게 만들 수 있음


단, 출력값은 1개이기 때문에 로그인 어플의 경우,

아이디, 비밀번호 둘 중 어떤 것이 잘못됐는지는 알 수 없음


if문을 2개로 설정할 경우, 각각의 출력값을 설정 가능


input_id=input("아이디를 입력해주세요. \n")

input_pwd=input("비밀번호를 입력해주세요. \n")

real_id="har"

real_pwd="11"

if real_id == input_id:

    if real_pwd == input_pwd:

        print("Hello!")

    else:

        print("잘못된 비밀번호입니다.")

else:

    print("잘못된 아이디입니다.")


3. 의미/중요한 부분

 1) AND 연산자는 2개의 조건이 모두 다 True일 때, True의 결과를 출력

 2) OR 연산자는 2개의 조건 중 1개만 True일 때, True의 결과를 출력

 3)논리 연산자를 통해 if문을 줄이는 것은 가능하나, 결과는 1개 밖에 출력하지 못함 

   즉, 다른 2개 이상의 조건을 통해 같은 1개의 결과를 출력하게 할 때 유용할 듯? 


4. 궁금점/감상

 1) NOT 논리 연산자의 역할은 무엇인지 따로 공부할 필요가 있을 듯

 2) 로그인 어플리케이션과 같이, 입력값(유저)은 다르나 동일 결과(로그인)를 위한 코딩을 할 때 유용할 듯 

'1_Python' 카테고리의 다른 글

9. 컨테이너 (Container)  (0) 2018.12.15
8. 주석  (0) 2018.11.17
6. 입력과 출력  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
4. 비교와 Boolean (블리언)  (0) 2018.10.14

6. 입력과 출력

1_Python2018. 11. 11. 15:31

1. 공부한 내용

 1) 입력값에 따라서 결과값을 다르게 할 수 있는 함수 input()

 2) input를 활용하여 조건문 if에 적용


2. 실습 내용 

 입력 코드

결과 

 설명

in_str = input("입력해주세요. \n")

print(in_str.upper()+" World!")

입력해주세요.

(입력) har

(출력) HAR World!

input() 함수를 통해 입력을 받고, 받은 입력값을

출력할 수 있게 됨. 뒤에 추가 문자열 조합 가능

in_str=input("아이디를 입력해주세요. \n")

real_har="11"

real_space="ab"

if real_har == in_str:

    print("Hello!, har")

elif real_space == in_str:

    print("Hello!, space")

else:

    print("Who are you?")

아이디를 입력해주세요.

(입력) 11

(출력) Hello!, har

(입력) ab

(출력) Hello!, space

(입력) asdad

(출력) Who are you?

지난 번에 배운 if 조건문의 경우,

in_str = 11 등으로 지정된 변수로만 작동되는 것이였지만

변수의 값을 input 함수로 지정함으로서 (in_str = input)

유저가 입력한 값을 변수로 정의하여 다양한 출력값을

나오게 할 수 있음

(로그인 어플리케이션이 같은 원리)


3. 의미/중요한 부분

 1) input 을 통해 입력된 숫자는 프로그램에서는 문자로 인식하기 때문에

    ""를 통해 문자열로 만들어줘야 같은 값으로 인식이 가능함

 2) Ruby의 경우, 하기와 같이 input 함수 활용법이 약간 다름

    puts("입력해주세요") 

    in_str = gets.chomp() 

    puts(in_str.upcase() + " World!")

 

4. 궁금점/감상

 1) 입력과 출력을 할 수 있는 input 함수는 상당히 중요한 것으로 보여지며, 기본적인 원리를 잘 숙지하면

     앞으로 다양하고 복잡한 코딩을 하는 데에도 활용할 수 있다고 생각됨

'1_Python' 카테고리의 다른 글

8. 주석  (0) 2018.11.17
7. 논리 연산자  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
4. 비교와 Boolean (블리언)  (0) 2018.10.14
3. 변수  (0) 2018.10.09

5. 조건문

1_Python2018. 10. 14. 18:39

1. 공부한 내용

 1) 조건문 (if)의 기본 이론과 활용 방법

 2) elif 및 else의 활용법 


2. 실습 내용 

 입력 코드

결과 

 설명

if True:

    print("code2")

    print("code1")

print("code3")

code2

code1

code3

if True:는 if 조건문 안에 있는 코드가 출력됨

 if False:

    print("code2")

    print("code1")

print("code3")

code3 

if False:는 if 조건문 안에 있는 코드가 출력되지 않음

단, if 조건문에서 벗어난 코드는 출력됨 

if 조건문 안에 있는 코드는 앞에 여백을 통해 구분/지정

input=11

real=11

if real == input:

    print("Hello!")

Hello!

미리 정의된 값(input, real)에 대해 if 조건문을 통해

값이 같으면(==) Hello! 가 출력됨 

input=11

real=22

if real == input:

    print("Hello!")

(출력 안됨)

미리 정의된 값이 같으면(==) Hello!가 출력되나,

다르므로 아무 것도 출력 안 됨

input=11

real=11

if real == input:

    print("Hello!")

if real != input:

    print("Who are you?")

input과 real이 같은 게 맞으면(== True)

-> Hello!

input과 real이 다른 게 맞으면(!= True)

-> Who are you?

미리 정의된 두 값이 같다(==), 라는 게 참(True)이면,

Hello! 를 출력 

미리 정의된 두 값이 다르다(!=), 라는 게 참(True)이면

Who are you? 를 출력

input=11

real=11

if real == input:

    print("Hello!")

else:

    print("Who are you?")

input과 real이 같은 게 맞으면(True)

-> Hello!

input과 real이 같지 않으면(False)

-> Who are you?

if의 == 구문에서 True가 아닌 False인 경우에

출력되는 값을 if !=가 아닌 else로 코딩 가능

if != 를 하나 더 추가하는 것과 동일한 결과이나,

코딩 자체가 짧고 중간에 끼어들 수 있는 코드가 없어짐

input="ab"

real_har=11

real_space="ab"

if real_har == input:

    print("Hello!, har")

elif real_space == input:

    print("Hello!, space")

else:

    print("Who are you?")

input이 11 이면

-> Hello!, har

input이 ab 이면

-> Hello!, space

input이 11 도 ab도 아니면

-> Who are you?

1개의 if의 조건문 안에 또 다른 조건문을 삽입하는 경우,

elif를 이용할 수 있음

(if 조건문 안에 또 다른 if를 써도 되나 elif가 효율적임)

if, elif, else 가 있으면 조건은 2개, 결과는 3개


3. 의미/중요한 부분

 1) if True 는 단순 출력, if False는 단순 미출력 (단순 참, 거짓이므로)

 2) Python의 경우, if 안에 들어가는 코드는 앞에 여백을 둬야 함

 3) != 은, 같지 않다는 게 참(True)

 4) if 안에는 또 다른 if를 추가할 수 있음. 하지만 elif를 활용하면 코드가 좀 더 간단해짐

 5) if, elif, else 뒤에는 반드시 : 를 입력해야 함


4. 궁금점/감상

 1) 엑셀의 if와 비슷한 느낌. 

 2) 다양한 조건을 두고 다른 결과를 나타내고 싶을 때는 elif와 else를 활용해야 함

 3) != 는 다르다는 게 참(True)이니 혼동하지 말 것! (다르다, 라는 정의를 지정하는 게 아님)

'1_Python' 카테고리의 다른 글

7. 논리 연산자  (0) 2018.11.11
6. 입력과 출력  (0) 2018.11.11
4. 비교와 Boolean (블리언)  (0) 2018.10.14
3. 변수  (0) 2018.10.09
2. 문자 제어 및 데이터 타입  (0) 2018.10.07

1. 공부한 내용

 1) 비교문을 통해 문자, 숫자 외에 Boolean (블리언)이라는 새로운 Data type을 출력


2. 실습 내용 

 입력 코드

결과 

 설명

print(1==1)

print(1==2)

print(1>2)

print(1<2)

print(True)

print(False)

True

False

False

True

True

False

== : 두 개의 값이 같은 지 다른 지 나타냄

<, > : 


3. 의미/중요한 부분

 1) 두 가지를 비교하여 나온 값은, 블리언이라는 Data type이며 Ture/False 두 가지로 나뉨

 2) Ruby의 경우, ture/false (소문자)


4. 궁금점/감상

 1) 간단해서 없음!

'1_Python' 카테고리의 다른 글

6. 입력과 출력  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
3. 변수  (0) 2018.10.09
2. 문자 제어 및 데이터 타입  (0) 2018.10.07
1. 수와 계산  (0) 2018.10.07

3. 변수

1_Python2018. 10. 9. 16:48

1. 공부한 내용

 1) 변수의 기본 문법 및 이해

 2) 변수의 활용 방법 (문자열, 수 계산)


2. 실습 내용 

 입력 코드

결과 

 설명

x=10

x=5

print(x+y)

15

x와 y에 특정 값을 지정하여 연산

title="python&ruby"

print("Title is "+title)

Title is python&ruby 

문자 뒤에 +를 넣어서 변수를 결합

name="har"

print("안녕하세요. "+name+"님")

print(name+"님을 위한 자료를 송부 드립니다.")

print("항상" +name+"님의 많은 도움 감사합니다.")

안녕하세요. har님

har님을 위한 자료를 송부 드립니다.

항상 har님의 많은 도움 감사합니다. 

1. 변수의 정의

2. 변수를 문자열 앞 뒤에 삽입해야 할 경우,

   +가 앞 뒤로 붙음

donation=200

student=10

sponsor=100

print((donation*student)/sponsor)

20

1. 각각의 변수에 숫자를 정의하여 계산하는 방식

2. 변수를 정의하는 단어는 다른 사람도 이해하기 쉽게 지정해야 함


3. 의미/중요한 부분

 1) 변수를 사용하기 위해서는 먼저 변수를 정의해야 함 (변수 값을 지정)

 2) 복잡한 문자열 수정과 수 계산의 경우, 변수를 적절하게 사용하면 간단한 수정으로 전체 값을 바꿀 수 있음

 3) 변수를 정의할 때는 다른 사람이 코드를 보더라도 이해할 수 있는 용어로 써야 함

    ex)x=200, y=10, x=100 / donation=200, student=10, sponsor=100


4. 궁금점/감상

 1) 변수는 앞으로도 활용할 부분이 많을 것으로 생각됨

 2) 변수를 정의하는 단어는 다른 사람이 보더라도 이해할 수 있어야 한다는 게 포인트인듯

'1_Python' 카테고리의 다른 글

6. 입력과 출력  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
4. 비교와 Boolean (블리언)  (0) 2018.10.14
2. 문자 제어 및 데이터 타입  (0) 2018.10.07
1. 수와 계산  (0) 2018.10.07

1. 공부한 내용

 1) 문자의 표현과 문자열 제어

 2) 특수한 문자들에 대한 이해

 3) 문자와 숫자를 통한 데이터 타입 차이


2. 실습 내용 

 입력 코드

결과 

 설명

print("hello "+"world")

hello world

문자열의 + 역할

print("hello "*3)

hello hello hello 

문자열의 * 역할

print("hello" [1])

문자열의 []번째 문자를 출력 

print('python'.capitalize())

Python 

문자열의 첫 번째 문자를 대문자로 출력 (.capitalize()) 

print('python'.upper())

PYTHON

문자열 전부를 대문자로 출력 (.upper())

print('python'.__len__()) 또는 print(len('python'))

문자열의 갯수(길이)를 출력 (len()) 

print('python'.replace('hon', ' programming'))

pyt programming 

문자열 일부를 교체 (.replace()) 

print("har's \"programming\"")

har's "programming" 

' 또는 " 등 특수문자를 출력 (특수문자 앞에 \) 

print('\\')

\앞에 \를 입력하여 \만 출력하게 만듦 

print("har's \nprogramming")

har's

programming

문자열의 줄바꿈 (\n) 

print("har's \t\tcom") 

har's           com 

문자열의 탭 띄우기 (\t) 

print("\a")

알람음 울림 

알람음 울리게 함 (\a) 


3. 의미/중요한 부분

 1) "10+5" 와 10+5 의 결과는 다름. "" 가 들어감으로서 숫자를 문자로 인식하기 때문

 2) 문자 제어 코드 중 문자열 안에서 작동하는 코드는 "" 안에 있으며, 그 밖에는 ""를 벗어난 곳에 입력

ex) print("har's \ncom") , print('python'.replace('hon', ' pro'))

 3) 특수문자를 그 모양대로 출력하기 위해서는 특수문자 앞에 \를 붙혀야 함


4. 궁금점/감상

 1) 문자열 제어에 대한 대략적인 큰 흐름을 배운 느낌

 2) \n 등과 같은 코드는... 예전에 게임의 자바스크립트인가.. 노가다로 뭐 수정할 때 썼던 거 같은데.... 가물가물

'1_Python' 카테고리의 다른 글

6. 입력과 출력  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
4. 비교와 Boolean (블리언)  (0) 2018.10.14
3. 변수  (0) 2018.10.09
1. 수와 계산  (0) 2018.10.07

1. 수와 계산

1_Python2018. 10. 7. 18:36

1. 공부한 내용

 1) Python에서 간단한 사칙 연산을 위한 코드 연습

 2) 좀 더 복잡한 계산을 위한 코드 연습


2. 실습 내용

 1) print(10+5) = 15

print(10-5) = 5

print(10/5) = 2

print(10*5) = 50

 2) import math

print(math.ceil(2.2))

= 3

print(math.floor(2.7))

= 2

print(math.pow(2,10))

= 1024.0

print(math.pi)

=3.14~~~~~


3. 의미/중요한 부분

 1) 화면에 출력하기 위한 코드 : print

 2) math 를 사용한 코드 작성 시, 최상단에 import math를 넣어놔야 함

 3) math.ceil(반올림), math.floor(내림), math.pow(제곱방식), math.pi(파이출력)


4. 궁금점

1) 비교적 간단한 수의 계산이였기 때문에 특별히 궁금한 점 없었음

'1_Python' 카테고리의 다른 글

6. 입력과 출력  (0) 2018.11.11
5. 조건문  (0) 2018.10.14
4. 비교와 Boolean (블리언)  (0) 2018.10.14
3. 변수  (0) 2018.10.09
2. 문자 제어 및 데이터 타입  (0) 2018.10.07

이 블로그는 2018년 10월, 아무 생각 없이 살던 33살의 직장인이 최소한의 IT 지식을 갖고 개발자가 되겠다며 공부를 시작하며 만들어졌습니다. 아주 기초적인 프로그래밍 공부를 기록하는 목적이기 때문에 이 블로그는 재미가 없습니다. ㅋㅋㅋㅋ 한편으로는 지나가던 개발 현업자분들의 오지랖을 기대하며 만들었으니 오지랖과 지적, 조언 등 댓글로 남겨주셔도 됩니다. (아마 매번 무플이겠지...)


이 블로그가 언젠가 개발자로서의 나의 첫 번째 포트폴리오가 되길 기대하며... 


1. 간단 프로필

 1) 이름 : 느린개발자 (SDM)

 2) 나이 : 2019년 기준, 34살

 3) 이력

 - ~2019년, 일본계 회사에서 부품 기술 영업 사원으로 만 5년째 재직중

 4) 능력 

 - 일본어 네이티브 수준 구사 (읽기/쓰기/회화)

 - 사회 생활 6년 동안 겪은 여러 경험들 (쓰잘데기 없을 듯...)

 - 5년 무사고 운전 능력 ㅋㅋㅋㅋ

 - 사무자동화산업기사 취득

 5) 학습 언어

 - Python (18.11~)


2. 목표

 1) 최종 목표 : Back-end 개발자로 취업! 혹은 1인 개발자 (2020년 안에 가능할라나...)