분류 전체보기
-
컴프리헨션 (Comprehension) - 리스트 내 for문, if문 사용하기Python 2021. 1. 5. 21:34
list1 = list() for i in range(5): list1.append(i) print(list1) [0, 1, 2, 3, 4] 리스트를 구현할 때 위처럼 리스트를 선언한 후 for문을 따로 돌려서 리스트를 초기화할 수도 있지만 리스트 내에서 for문을 선언하여 아래와 같이 한 줄로 초기화 할 수도 있음 = 리스트 컴프리헨션 (List Comprehension) list1 = [i for i in range(5)] print(list1) [0, 1, 2, 3, 4] 맨 위에 있는 코드 세 줄을 한 줄로 줄일 수 있다. alpha = [chr(i) for i in range(97, 123)] loc = [-1 for i in range(len(alpha))] print(loc) [-1, -1,..
-
파이썬 sort(), sorted()Python 2021. 1. 5. 21:12
팀 정렬(Tim sort) 사용 오름차순 정렬이 기본 둘 다 요소를 정렬하되 기존 리스트를 수정하느냐, 새로운 리스트를 만들어서 반환하느냐의 차이가 있음 sort() : 기존 리스트의 요소를 정렬하는 리스트 메소드 (반환:none) 리스트.sort() sunday = [44, 43, 40, 36, 31, 29] sunday.sort() print(sunday) [29, 31, 36, 40, 43, 44] sorted(list) : 기존 리스트의 요소를 정렬하여 반환하는 내장함수, 리스트 이외의 이터러블도 정렬 가능 이터러블(iterable) : 반복문 사용 가능한 객체 e.g. 리스트, 튜플, 딕셔너리 새로운리스트 = sorted(기존리스트) sunday = [44, 43, 40, 36, 31, 29] ..
-
파이썬 리스트 (list)Python 2021. 1. 5. 21:09
리스트 생성하기 리스트이름 = [요소, 요소, 요소, …] list1 = [1, 2, 3] list2 = ['hjchoi', 940728] list3 = [[0, 1], [2, 3], [4, 5]] 데이터 타입 제한이 없다. 데이터 타입이 달라도 하나의 리스트 안에 다 넣을 수 있다. 리스트 안에 리스트를 넣을 수도 있다. (리스트 중첩) 문자열을 넣을 수도 있는데 문자 하나하나가 하나의 요소가 된다. (공백 포함) >>> list("WINDY DAY") ['W', 'I', 'N', 'D', 'Y', ' ', 'D', 'A', 'Y'] 리스트에 정수를 곱해서 다음과 같이 생성할 수도 있다. >>> list1 = [1, 2, 3] >>> list2 = [0] * len(list1) >>> list2 [0,..
-
MySQL count - 개수 출력SQL 2021. 1. 5. 18:08
튜플 전체 개수 출력 : count(*) SELECT count(*) FROM 테이블이름; SELECT count(*) as count from animal_ins; null이 아닌 튜플 개수 출력 : count(속성이름) SELECT count(속성이름) FROM 테이블이름; SELECT count(name) as count from animal_ins; name의 값이 null이 아닌 튜플의 개수만 출력한다. 중복을 제거한 튜플 개수 출력 : distinct SELECT count(distinct 속성이름) from 테이블이름; SELECT count(distinct name) as count from animal_ins; name 값이 중복된 튜플이 있으면 그 중 첫 번째 한 개만 출력한다.
-
MySQL if, ifnull - 조건 대체SQL 2021. 1. 5. 17:46
IF : 조건에 해당하면 대체한다. SELECT IF(조건, 참, 거짓) FROM 테이블이름; SELECT IF(animal_type='cat', '고양이', '강아지') FROM animal_ins; animal_type 속성의 값이 cat일 경우 고양이로 출력하고, 아닐 경우 강아지로 출력한다. IFNULL : 값이 NULL이면 대체한다. SELECT IFNULL(속성이름, 대체값) FROM 테이블이름; SELECT animal_type, IFNULL(name, 'No name') as name from animal_ins order by animal_id asc; name 속성의 값이 null일 경우 No name으로 대체한다.
-
SQL 기본 쿼리문 (Query)SQL 2021. 1. 5. 17:24
INSERT 문을 제외한 SELECT, UPDATE, DELETE 문의 경우 WHERE 절을 사용할 수 있다. 문장은 항상 세미콜론(;)으로 끝나며 대소문자를 구별하지 않는다. SELECT : 데이터를 불러온다. SELECT 속성이름 FROM 테이블이름; SELECT user_id, user_name FROM TB_USER; TB_USER 라는 테이블에서 user_id, user_name을 찾는다. SELECT user_id AS id FROM TB_USER; TB_USER 테이블에서 user_id를 찾되, 속성 이름을 id로 표시한다. SELECT WHERE SELECT * FROM TB_USER WHERE user_id='candyz'; TB_USER 테이블에서 user_id 값이 candyz인 컬럼..
-
터틀봇3 NavigationROS 2020. 12. 30. 22:20
로보티즈에서 제공하는 e-매뉴얼을 따라 진행했다. emanual.robotis.com/docs/en/platform/turtlebot3/slam/#run-slam-node ROBOTIS e-Manual emanual.robotis.com Navigation 역시 SLAM과 마찬가지로 bring up 과정이 필요하다. 아래 글에서 Bring up부터 TURTLEBOT3_MODEL 파라미터 사전 정의하는 부분까지 진행한다. jihnli.tistory.com/4 터틀봇3 SLAM 로보티즈에서 제공하는 e-매뉴얼을 따라 진행했다. emanual.robotis.com/docs/en/platform/turtlebot3/slam/#run-slam-node ROBOTIS e-Manual emanual.robotis.c..
-
터틀봇3 SLAMROS 2020. 12. 27. 16:39
로보티즈에서 제공하는 e-매뉴얼을 따라 진행했다. emanual.robotis.com/docs/en/platform/turtlebot3/slam/#run-slam-node ROBOTIS e-Manual emanual.robotis.com SLAM과 Navigation을 진행하기 위해서는 반드시 터틀봇 Bring up 과정을 먼저 수행해야 한다. 터틀봇3 가져오기 (Bring up) PC에서 roscore 명령어를 실행한다. roscore 새 터미널을 열어서 라즈베리파이와 연결해준다. {IP_ADDRESS_OF_RASPBERRY_PI} 자리에 라즈베리파이 IP를 입력한다. ssh pi@{IP_ADDRESS_OF_RASPBERRY_PI} 라즈베리파이와 연결된 상태에서 다음 명령어를 입력하여 터틀봇 기본 패키..