Set


- 집합을 구현한 자료구조
- 요소의 중복을 허용하지 않는다
- 딕셔너리와 Set 모두 중괄호를 사용하므로 헷갈리지 않도록 주의해야한다

 

Set이름 = {' ', ' '}

animalSet = {'cat', 'cat', 'mouse', 'cow', 'cow', 'dog', 'pig', 'mouse'}
print(animalSet)
print(type(animalSet))

+ 리스트의 중복을 손쉽게 제거할 수 있다

numberList = [4, 5 ,1, 2, 2, 3, 4, 4, 5, 5, 6, 6]
numberSet = set(numberList)


중복없는 1 ~ 45 7자리 랜덤 숫자를 만들어 보기 (로또 번호)

 

+ 랜덤 사용하기

import random

 

random.randrange(x, y)

x ~ (y - 1) 사이의 랜덤 정수 생성

 

lotto = []
while len(lotto) < 7:
    num = random.randrange(1, 46)
    if num in lotto:
        break
    else:
        lotto.append(num)

print(lotto)

 

'PYTHON' 카테고리의 다른 글

class  (0) 2024.10.04
def (함수)  (0) 2024.10.02
Dicionary  (0) 2024.09.23
Sequence  (2) 2024.09.23
Tuple  (0) 2024.09.19

영화 목록을 가져온다고 생각하고 만들어보자

먼저 네이버에 현재상영영화에 테이블에 있는 값들을 가져와야한다

크롬 오픈

검색어에 "현재상영영화" setText


검색해야하니 KeyInput으로 Enter

지금은 빨간버튼으로 잠겨있는데 클릭 후 키를 입력시키고 완료되면 다시 버튼을 누르면 된다

여기까지 완료하고 실행할 시

검색을 완료한다

이제 데이터들을 가져와야되니

ChromeGetData로 하나씩 가져와준다

가져온 요소들을 저장할 변수 추가

 

더블클릭시 요소를 가져올 수 있다

영화이름

장르

개봉일

출연

엑셀을 열어주고

하나씩 채워준다

 

 

신기하다

'RPA' 카테고리의 다른 글

RPA  (0) 2024.09.24

InputBox : 변수를 입력받는다

MessageBox : 변수 혹은 설정한 값을 출력

InputBox 카드를 꺼낸다

 

하단을 보면 입력받는 데이터를 저장할 변수를 추가한다 this.정수

입력한 값을 저장한 변수에는 방금 만든 변수 this.정수 입력

 

 

입력받는 값이 제대로 출력되는지 확인하기 위해 라이브러리에서 MessageBox 카드 꺼내기

 

메시지 박스 안에도 표시할 값에 입력받는 값 this.정수

 

상단에 실행버튼 클릭

InputBox

 

MessageBox


IfThen : 조건이 참일때만 실행

 

조건을 입력받는 변수(this.정수)가 100일 때 실행

확인을 위해 메시지 박스 삽입

 

입력에 100 입력시 메시지박스 출력

100이외의 값이 들어오면 아무 일도 일어나지 않는다


IfElse : 조건이 참일때, 거짓일때 실행

If : 변수가 70 이상일 시 실행할 부분

Else : 70 이상이 아닐시 실행할 부분


For :

0 부터 1씩 증가하여 증가한 값이 9가 될 시 종료되는 반복문

확인을 위해 OpenApp으로 메모장 열기

Click 으로 메모장 입력부분 클릭

SetText 부분은 this.i로 반복되면서 증가하는 값을 계속 입력

너무 빨리 지나가니

3초 단위로 끊어서 입력

 

 

 

'RPA' 카테고리의 다른 글

getData  (2) 2024.10.02

딕셔너리 생성

 

딕셔너리 이름 = {

         '키1' : '값1'

         '키2' : '값2'

}

 

person = {
    'name': '김철수',
    'age': 30,
    'hasDrivingLicense': True
}

딕셔너리 업데이트

 

딕셔너리 이름.update(변수1='변경할 값')

person.update(name='박철수')
person.update(age=22)
person.update(hasDrivingLicense=False)

 

새 키/값 추가도 가능

person.update(wearinGlasses=True)

 


딕셔너리 출력

print(person)

딕셔너리도 타입 반환 가능

print(type(person))


키로 값 꺼내쓰기

 

딕셔너리이름.get('키')

딕셔너리['키']

print('딕셔너리에서 꺼낸 값: ', person.get('name'))
print('딕셔너리에서 꺼낸 값2: ', person['age'])

keys() : 해당 딕셔너리의 키 값으로 만들어진 리스트를 반환

print('리스트 반환: ', person.keys())

+ for문 활용으로 하나씩 꺼내기 가능

for key in person.keys():
    print('%s: %s' % (key, person.get(key)))


values() : 해당 딕셔너리의 값들로 만들어진 리스트를 반환

print(person.values())


 items() : 해당 딕셔너리의 (키, 값)을 튜플 형태로 반환

print(person.items())

++ items()도 for문 활용가능

for k, v in person.items():
    print('%s: %s' % (k, v))

'PYTHON' 카테고리의 다른 글

def (함수)  (0) 2024.10.02
Set  (0) 2024.10.02
Sequence  (2) 2024.09.23
Tuple  (0) 2024.09.19
If, For, While  (1) 2024.09.19

시퀀스


- 파이썬에서는 값이 열거되어있는 자료형들을 시퀀스라고 부른다
- 문자열, 리스트, 튜플, range객체 등 순서대로 값을 꺼낼 수 있는 것들이 시퀀스에 속한다
- 시퀀스 타입인 객체들은 시퀀스를 요구하는 자리에 들어가 활용될 수 있다


 in 시퀀스 : 해당 시퀀스 안에 값이 포함되어있는지 확인 (contains)

str1 = "가다나다라마바사"
list1 = [10, 11, 12, 13, 14]
tuple1 = 20, 21, 22

print("김" in str1)
print("다" in str1)
print(15 in list1)
print(21 in tuple1)


for 변수 in 시퀀스: for문으로 해당 시퀀스를 순차적으로 탐색

- 그냥 for문하고 똑같은거 같다

for a in 10, 11, 12:
    print(a)


시퀀스 객체끼리 +연산을 통해 이어 붙일수 있다

 

list 객체끼리 +

print([0, 1, 2] + [3, 4, 5, 6])

 

튜플을 리스트로 변환후 리스트와 +

print(list((0, 1, 2)) + [3, 4, 5, 6])

 

문자열도 ch가 이어진 시퀀스로 + 가능

print('apple:' + ' 1500원')


시퀀스 객체에 *연산을 통해 해당 시퀀스를 반복한 결과를 얻을 수 있다

print([0, 1, 2] * 5)
print((1, 2, 3) * 3)
print("hello!" * 5)

 

'PYTHON' 카테고리의 다른 글

Set  (0) 2024.10.02
Dicionary  (0) 2024.09.23
Tuple  (0) 2024.09.19
If, For, While  (1) 2024.09.19
PrintFormat, Input  (0) 2024.09.18

튜플

 

- 리스트와 비슷하게 여러 값들을 저장하는 객체
- 저장된 요소를 추가, 수정, 삭제 할 수 없다
- 읽기 전용 리스트
- 빈튜플은 ()로 선언한다

 

t1 = ();
t2 = (10, 20, 30);

 

+ 괄호를 생략해도 튜플이 된다

t3 = 10, 20, 30, 40, 50

print로 출력가능

print(t2);


튜플[index] : index 번째 요소 출력

print(t2[0]);


튜플도 len() 함수로 길이를 반환할 수 있다

print("len: ", len(t2));


type() 함수로 데이터 타입 반환

print(type(t3));


튜플을 리스트로, 리스트를 튜플로 변환할 수 있다

 

튜플 > 리스트

l3 = list(t3)

l3[1] = 1
l3[3] = 4

print(l3)


리스트 > 튜플

tt3 = tuple(l3)
print(tt3)


튜플 또는 리스트의 각 값을 변수에 할당할 수 있다

a, b = (10, 12)
a, b = [10, 11]

print(a)
print(b)

'PYTHON' 카테고리의 다른 글

Dicionary  (0) 2024.09.23
Sequence  (2) 2024.09.23
If, For, While  (1) 2024.09.19
PrintFormat, Input  (0) 2024.09.18
DataTypes  (1) 2024.09.15

if

 

num = 11;

 

 

if num <= 3:
    print("num이 3이하 입니다.");

if 조건문:

      실행할 함수

+ 파이썬은 들여쓰기로 블록을 구분한다


elif num <=6:
    print("num이 3보다는 큰 6이하 숫자 입니다.");
elif num <=9:
    print("num이 6보다는 큰 9이하 숫자입니다.");

또 elseIf 같은 경우도

elif 조건문:

     실행할 함수

elif 또한 마찬가지로 들여쓰기로 블록을 구분

else:
    print("num이 9보다 큽니다");

위와 동일


for

 

파이썬의 for문은 자바의 forEach와 유사하다


[ ] : 파이썬의 리스트

prices = [];

 

append() : 값을 순서대로 추가

prices.append(10);
prices.append(20);
prices.append(30);

 

List.insert(x, y); x번째 인덱스에 값 (y)를 삽입

prices.insert(2, 99);

sort() : 리스트 정렬

prices.sort();

 

len() : 길이를 셀 수 있는 객체(해당 클래스의 __len__이 구현된 객체)의 길이를 반환하는 함수

print(len(prices));

str(): 문자열로 표현할 수 있는 객체(해당 클래스의 __str__이 구현된 객체)의 문자열 형태를 반환하는 함수

print(str(prices));


리스트 안에 있는 길이만큼 반복한다

for x in [1, 2, 3, 4, 5]:
    print(x);

for 변수 in 리스트:

      실행할 함수

 


문자열도 동일하다

for animal in ['tiger', 'lion', 'horse', 'rabiit', 'dog'] :
    print(animal);


range() : 원하는 범위의 숫자 리스트 객체를 생성하여 반환하는 함수

range(시작값, 종료값, 증감값);

print(range(10));

 

이 range 함수를 for문에 활용할 수 있다

for num in range(10):
    print(num);

정수 하나만 넣을경우 range(시작값:0, 종료값)

 


for num in range(5, 10):
    print("n2: ", num);

정수 두개를 넣을경우 range(시작값, 종료값) 이 된다


for num in range(5, 10, 2):
    print("n3: ", num);

정수 세개를 넣을경우 range(시작값, 종료값, 증감값)


+ 문자열은 문자(char)의 시퀀스로 간주할 수 있기 때문에 문자열도 for문을 돌릴 수 있다

for ch in "안녕하세요 오늘은 파이썬 수업입니다.":
    print(ch);


while

 

while 조건문 :

       실행할 함수

 

for문하고 거의 비슷하게 볼 수 있는거 같다

while i < 10:
    print("Hello~ %d! " % i);
    i = i + 1;


i = 0;
while True:
    print("Infinte Loop ~!!");
    i = i + 1;
    if i == 15:
        break;

조건문에 True 사용시 무한루프 가능

끝없이 반복하기 때문에 if문으로 break

'PYTHON' 카테고리의 다른 글

Sequence  (2) 2024.09.23
Tuple  (0) 2024.09.19
PrintFormat, Input  (0) 2024.09.18
DataTypes  (1) 2024.09.15
python 설치와 print()  (0) 2024.07.24

PrintFormat

 

%s : 문자열
%d : 정수
%c : 자바에서는 char 형태로 사용하지만 python에는 char형태가 없기 때문에 %c 자체가 없다
%o : 정수를 8진수로
%x : 정수를 16진수로
%f : 소수

 

문자열 서식 뒤에 %를 붙여 printf() 처럼 활용할 수 있다

message = "%d년 %d월 %d일" % (2024, 9, 23);

print(message);

 

print("%s: %x(%.2f)" % ("김철수", 25, 123.123))

 


sep 옵션 : , 로 나눈 값들 사이에 들어갈 값을 설정 ("기본 " ")

print(2024, "년 ", 9, "월 ", 23, "일 ", sep="");

 

sep 옵션을 사용 안했을 때

print(2024, "년 ", 9, "월 ", 23, "일 ");

 

기본값이 " " 라서 , 뒤에 띄어쓰기가 들어간다


Input

 

콘솔에서 입력을 받는 함수, 입력을 무조건 문자열 타입으로 받는다

print("16진수로 변환하고 싶은 숫자를 입력 >>", end="");
value = input();

 

문자열 타입으로 받기 때문에 int(value)를 해줘야한다

print("(%s)의 16진수는 %x 입니다." % (value , int(value)));


input() 내부에 문자열을 전달하면 안내문(prompt)이 된다

value = input("8진수로 변환하고 싶은 숫자 입력 >> ");

위에 과정을 짧게 생략할 수 있다

똑같이 12 입력시

print("(%s)의 8진수는 %o 입니다" %(value, int(value)));

마찬가지로 str 형식으로 받아오기 때문에 int로 타입캐스팅하여 문자열을 정수로 변환

'PYTHON' 카테고리의 다른 글

Sequence  (2) 2024.09.23
Tuple  (0) 2024.09.19
If, For, While  (1) 2024.09.19
DataTypes  (1) 2024.09.15
python 설치와 print()  (0) 2024.07.24

+ Recent posts