Python – 변수, 조건문, 연산자

<변수>

  • 변수이름 = 값
  • 값에는 숫자 말고도 문자열도 넣을 수 있다
  • num = 33
  • name = ‘yurim’         //’    ‘ 를 사용한다.

descript = ‘good’

print name + ‘  ‘+ descript            //yurim good 이라고 나옴

  • 지역변수 : 함수 안에서 만들어진 변수

-함수가 호출되면 만들어지고, 함수 실행이 끝날 때 함께 없어진다.

-함수 밖에서 지역변수 불러보기!!!

 

>>> def d_is_10():

…     d = 10               # 지역변수

…     print ‘d 값은 ‘, d, ‘입니다’

>>> d_is_10()

d 값은  10 입니다

>>> d

Traceback (most recent call last):

File “<stdin>”, line 1, in ?

NameError: name ‘d’ is not defined         //d라는 이름이 없다는 에러메세지

d_is_10() 함수가 실행되는 동안은 d가 있었는데, 함수의 실행이 끝난 다음에 함께 사라져버렸기 때문.

  • 전역변수 : 함수 바깥에서 만들어진 변수
>>> x = 10                 # 전역변수

>>> def printx():

…   print x

>>> printx()

10

-함수 안에서도 얼마든지 사용가능

-but 프로그램이 복잡해질수록 골칫거리가 된다.

  • 함수 안에서 전역변수 만들기:      
>>> def e_is_10():
…     global e            # 전역변수

…     e = 10

…     print ‘e 값은 ‘, e, ‘입니다’

>>> e_is_10()

e 값은  10 입니다

>>> e

10

-global 로 사용하겠다 명시하면 된다.

– e_is_10() 함수가 실행되면서 e라는 전역변수가 만들어지고, 이 변수는 함수의 실행이 끝난 다음에도 없어지지 않음

 

 

<조건문>

  • while : 어떤 조건이 만족되는 동안 그 아래 있는 기능을 반복
>>> num = 1
>>> while num <= 100:
...     print(num)
...     num = num + 1

  • if : 만약 ~이면 이걸 실행해버려랑
>>> c = 15 * 5
>>> d = 15 + 15 + 15 + 15 + 15
>>> if c > d:                      # 만약 c가 d보다 크면
...     print('c > d')             # 'c > d'라고 출력한다.
... elif c == d:                   # 그렇지 않고 c와 d가 같다면
...     print('c == d')            # 'c == d'라고 출력한다.
... else:                          # 이도 저도 아니면
...     print('c < d')             # 'c < d'라고 출력한다.
...
c == d
  •  for : list같은 순서형 자료를 이용해서 원하는 명령을 반복할 때 사용
>>> family = ['father', 'mother', 'I', 'syster'] 
>>> for x in family:                    # family라는 목록의 각각의 항목 x에 대하여:
...     print('%s %s' % (x, len(x)))    # x와 x의 길이를 출력하라.
...
father 6
mother 6
I 1
syster 6

 

주의! 다른 언어에서의 for과 좀 다르다.

  • range : 어떤 숫자를 적어주면 그 범위 안에서 리스트를 만든다.
>>> range(2, 7)         # 파이썬 2

>>> list(range(2, 7))   # 파이썬 3

[2, 3, 4, 5, 6]      //요렇게 나옴

 

 

<연산자>

  • 관계연산자 :

>, <, <=, >= , ==, !=   (c랑 같음)

  • 논리연산자

~a, a&&b, a||b   (c랑 같음)

논리식 계산 순서
– 결과가 알려지는 시점까지만 계산
– 최종 계산 시점의 객체를 리턴
– 1 and 2  (and 둘다 확인해야 되서 양쪽 다 계산하므로 2가 최종 계산 위치..그래서 2가 리턴)

 

  • 비트 단위 연산자

비트 단위 연산자
– 비트 조작 연산자
~ : 비트 반전(1의 보수)
<<, >> : 좌측 시프트, 우측 시프트
& : 비트 단위 and
^ : 비트 단위 xor
| : 비트 단위 or

 

 

 

 

 

 

참고 : http://www.pythonlab.org

위키피디아

Headfirst python