์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Absolute
- AGI
- ai
- AI agents
- AI engineer
- AI researcher
- ajax
- algorithm
- Algorithms
- aliases
- Array ๊ฐ์ฒด
- ASI
- bayes' theorem
- Bit
- Blur
- BOM
- bootstrap
- canva
- challenges
- ChatGPT
- Today
- In Total
A Joyful AI Research Journey๐ณ๐
[40] 230223 Ch. 3 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ํ์ด์ฌ ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ: 1. ํ์ด์ฌ ์์ํ๊ธฐ, 2. ํ์ด์ฌ ์๋ฃํ [K-๋์งํธ ํธ๋ ์ด๋ 40์ผ] ๋ณธ๋ฌธ
[40] 230223 Ch. 3 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ํ์ด์ฌ ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ: 1. ํ์ด์ฌ ์์ํ๊ธฐ, 2. ํ์ด์ฌ ์๋ฃํ [K-๋์งํธ ํธ๋ ์ด๋ 40์ผ]
yjyuwisely 2023. 2. 23. 16:42230223 Thu 40th class
Ch. 3 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ํ์ด์ฌ ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ
์ง๋: p. 82 ~ (๊ต์ฌ: IoT ์ฌ๋ฌผ์ธํฐ๋ท์ ์ํ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด 4 ์ ์, ์ ์: ์ต์ฃผํธ , ๊น์ฌ๋ฒ , ์ ๋์ง)
์ฐธ๊ณ ๊ฐ๋ฅ ์ฑ
: ์์ด๋ณด๋ฅผ ์ํ Python: ์ฝ๊ฒ ํ์ด ์ด ๊ธฐ์ด ๋ฌธ๋ฒ๊ณผ ์ค์ต
๊ต์ฌ ์ฝ๋ ๊นํ๋ธ: https://github.com/codingspecialist/RaspberryPi4-Book-Example
๊ต์ฌ ์์ค ๋ฐ PPT: http://jspstudy.co.kr/main/main.jsp
์ ์ ์นดํ: https://cafe.naver.com/metacoding
์ค๋ ๋ฐฐ์ด ๊ฒ ์ค ๊ธฐ์ตํ ๊ฒ์ ์ ๋ฆฌํ๋ค.
๋ด๊ฐ ๋ชฐ๋๋ ๊ฒ
1. ๋ฆฌ์คํธ ์๋ฃํ: [,] ๋๊ดํธ๋ฅผ ์ด๊ณ ๋ซ๋๋ค. ๋ฐฐ์ด๊ณผ ํก์ฌํ ๊ฐ๋ ์ด๋ค.
[0,0,0,0]
[1, 2, 3]
li = [10,"์ฅ๋๊ฑด",23,"์์ธ]
li | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
li[0] | li[1] | li[2] | li[3] |
2. ํํ ์๋ฃํ: (,) ์๊ดํธ๋ก ์ด๊ณ ๋ซ๋๋ค. ๊ดํธ๋ ์๋ต ๊ฐ๋ฅํ๋ค.
ํํ์ ํ ๋ฒ ๊ฐ์ ์ ํ๋ฉด ๋ด๋ถ์ ๊ฐ์ ๋ฐ๊ฟ ์๊ฐ ์๋ค.
์ฝ๊ธฐ ์ ์ฉ์ด๋ค.
('red', 4, 'python', True)
(1, 2, 3)
tu = (10, "์ฅ๋๊ฑด", 23, "์์ธ")
tu | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
tu[0] | tu[1] | tu[2] | tu[3] |
3. ๋์
๋๋ฆฌ ์๋ฃํ: {,} ์ค๊ดํธ๋ก ์ด๊ณ ๋ซ๋๋ค.
{dict = ["๋ฒํธ":10, "์ฑ๋ช
": "์ฅ๋๊ฑด", "๋์ด":23, "์ฌ๋๊ณณ":"์์ธ"}
dict["์ฌ๋๊ณณ"] = "๊ฒฝ๊ธฐ๋"
dic (value) | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
(key) | dic[๋ฒํธ] | dic[์ฑ๋ช ] | dic[๋์ด] | dic[์ฌ๋๊ณณ] |
append๋ ์ ์ผ ๋ง์ง๋ง์ ๊ฐ์ ์ถ๊ฐํ๋ค.
aa.append(40)
insert๋ ๋ด๊ฐ ์ถ๊ฐํ๊ณ ์ถ์ ๊ณณ์ ์ถ๊ฐํ๋ค.
aa.insert(2, 222)
์๋ฃํ
Java
HashMap(ํด์ฌ๋งต): Java HashMap is a class which is used to perform operations such as inserting, deleting and locating elements in a map. We create a map, where we pass two kinds of values which are 'key' and 'value'.
Javascript/jQuery
JSON(์ ์ด์จ): JSON is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays.
Python
Dictionary(๋์ ๋๋ฆฌ): Dictionaries are used to store data values in key:value pairs. A dictionary is a collection which is ordered, changeable and do not allow duplicates.
ํ์ด์ฌ ๋ฐฐ์ด ํน์ ์์ ์ญ์
์ฐธ๊ณ : https://www.lainyzine.com/ko/article/how-to-delete-elements-of-a-list-in-python/
Ch. 3 ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด๋ฅผ ์ํ ํ์ด์ฌ ๊ธฐ์ด ๋ฐฐ์ฐ๊ธฐ
์ฑ ์ ๋ชฉ์ฐจ
01 _ ํ์ด์ฌ ์์ํ๊ธฐ
01-1 ํ์ด์ฌ ๊ฐ์
01-2 ํ์ด์ฌ Windows ์ค์นํ๊ธฐ
01-3 ํ์ด์ฌ์ ์ฃผ์
02 _ ํ์ด์ฌ ์๋ฃํ
02-1 ์ซ์ํ
02-2 ๋ฌธ์ํ
02-3 ๋ฆฌ์คํธ
02-4 ํํ
02-5 ๋์ ๋๋ฆฌ
03 _ ํ์ด์ฌ ์ ์ด๋ฌธ
03-1 if๋ฌธ
03-2 for๋ฌธ
03-3 whie๋ฌธ
03-4 break๋ฌธ
04 _ ํ์ด์ฌ ํจ์ ์ฌ์ฉ๋ฒ
04-1 ํจ์ ์ ์ธํ๊ธฐ
04-2 ํจ์ ์ธ์ ์ฌ์ฉํ๊ธฐ
05 _ ํ์ด์ฌ ํด๋์ค์ ๋ชจ๋
05-1 ํด๋์ค
05-2 ๋ชจ๋
05-3 ๋ผ์ด๋ธ๋ฌ๋ฆฌ
1. ํ์ด์ฌ ์์ํ๊ธฐ
1.1 ํ์ด์ฌ ๊ฐ์
//Javascript or Java
if (์กฐ๊ฑด์){
์ฐธ์ ๋ํ ๊ฒฐ๊ณผ
}else{
๊ฑฐ์ง์ ๋ํ ๊ฒฐ๊ณผ
}
//Python
if ์กฐ๊ฑด์:
์ฐธ์ ๋ํ ๊ฒฐ๊ณผ1
์ฐธ์ ๋ํ ๊ฒฐ๊ณผ2
else:
๊ฑฐ์ง์ ๋ํ ๊ฒฐ๊ณผ1
๊ฑฐ์ง์ ๋ํ ๊ฒฐ๊ณผ2
๋ค์ฌ์ฐ๊ธฐ๊ฐ ์ค์ํ๋ค.
ํญ(Tab) ๋ฌธ์๋ฅผ ์ฌ์ฉํ์ง ์์ ๊ฒ์ ๋งค์ฐ ๊ฐ๋ ฅํ ์๊ตฌํ๋ค.
1.2 ํ์ด์ฌ Windows ์ค์นํ๊ธฐ
ํ์ด์ฌ ์ค์นํ ๋ ํ๊ฒฝ ์ค์ ์ฒดํฌ ํ๊ธฐ
1.3 ํ์ด์ฌ์ ์ฃผ์
#ํ ์ค ์ฃผ์
'''
์ฌ๋ฌ์ค ์ฃผ์
'''
"""
์ฌ๋ฌ์ค ์ฃผ์
"""
๋ฐ๋ฉด, ์๋๋ ์๋ฐ์ ์ฃผ์์ด๋ค.
//
/*
*/
2. ํ์ด์ฌ ์๋ฃํ
์๋ฐ | ํ์ด์ฌ ์๋ฃํ |
[1] ๊ธฐ๋ณธํ Primitive Type 1.1) ์ซ์ํ byte a = 10; int b = 20; double c = 3.14; 1.2) ๋ฌธ์์ดํ 1.3) ๋ ผ๋ฆฌํ [2] ์ฐธ์กฐํ Reference Type |
1) ์ซ์ํ a = 10 b = 20 c = 3.14 2) ๋ฌธ์์ด ์๋ฃํ 3) ๋ฆฌ์คํธ ์๋ฃํ 4) ํํ ์๋ฃํ 5) ๋์ ๋๋ฆฌ ์๋ฃํ |
์ธํฐํ๋ฆฌํฐ: ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์์ค ์ฝ๋๋ฅผ ๋ฐ๋ก ์คํํ๋ ์ปดํจํฐ ํ๋ก๊ทธ๋จ ๋๋ ํ๊ฒฝ ex) Python, Javascript
์ปดํ์ผ๋ฌ: ์์ ์ฝ๋๋ฅผ ๊ธฐ๊ณ์ด๋ก ๋ฒ์ญํ๋ค. ex) Java
ํ์ด์ฌ ์๋ฃํ
- Numeric Types: int(์ ์), float(์์), complex(๋ณต์์)
- Sequence Types: str(๋ฌธ์์ด), list(๋ฆฌ์คํธ), tuple(ํํ)
- Mapping Type: dict(๋์ ๋๋ฆฌ)
- Set Types: set(์งํฉ)
- Boolean Type: bool(๋ถ๋ฆฌ์ธ)
- Binary Types: bytes, bytearray, memoryview
Java์ ๋ฐ์ดํฐ ์ ํ์ 8์ข ๋ฅ์ ๊ธฐ๋ณธํ(primitive type)๊ณผ ์ฐธ์กฐํ(reference type)์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- Java Data Type
- Primitive Type
- Boolean Type(boolean)
- Numeric Type
- Integral Type
- Integer Type(short, int, long)
- Floating Point Type(float, double)
- Character Type(char)
- Integral Type
- Reference Type
- Class Type
- String Type
- Wrapper Class
- Interface Type
- Array Type
- Enum Type
- Class Type
- Primitive Type
์ฐธ๊ณ : https://www.devkuma.com/docs/java/data-type/
2.1 ์ซ์ํ
์ ์ ๋ฐ ์ค์๋ฅผ ํํํ๋ ํ์
์ด๋ค.
์ซ์ํ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ์ถ๋ ฅํ๋ ์์ ์ด๋ค.
a = 123 # ๋ณ์ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ
print(a)
print(type(a))
์๋ฐ๋ ์๋์ ๊ฐ๋ค.
//Java
class A{
public static void main(String[] args){
int a = 123;
System.out.println(a);
}
}
์์ 1)
a = 123 # ๋ณ์ ์ ์ธ๊ณผ ๋์์ ์ด๊ธฐํ
print(a)
print(type(a)) # type ํจ์๋ ๋ณ์์ ํ์
์ ๋ฆฌํด
a = 100 * 100
print(a)
a , b = 9 , 2
print(a*b)
์๋ฐ๋ ์๋์ ๊ฐ๋ค.
//Java
class A{
public static void main(String[] args){
int a, b;
a = 9;
b = 2;
System.out.println(a*b);
}
}
๊ฒฐ๊ณผ)
123
<class 'int'>
10000
18
2.2 ๋ฌธ์ํ
๋ฌธ์์ด์ ํํํ๋ ํ์ ์ด๋ค.
์์ )
a = "ํ์ด์ฌ ๋ง์ธ" #์ ๋ฐ์ดํ๋ก ๋ฌธ์์ด ๊ฐ์ ์ ์ธ
print(a)
print(type(a)) #type ํจ์๋ ๋ณ์์ ํ์
์ ๋ฆฌํด
b = 'python go' #ํ ๋ฐ์ดํ๋ก ๋ฌธ์์ด ๊ฐ์ ์ ์ธ
print(b)
๊ฒฐ๊ณผ)
ํ์ด์ฌ ๋ง์ธ
<class 'str'>
python go
๋ฌธ์ ํ์ด๋ณด๊ธฐ)
Q1. type()ํจ์๋ฅผ ์ด์ฉํ์ฌ ์๋ ๋ณ์์ ๋ฐ์ธ๋ฉ๋ ๊ฐ์ ํ์
์ ํ๋ณํ๊ธฐ.
a = "132"
์์)
a = "132"
#type(์๋ฃํ)
print(type(a))
๊ฒฐ๊ณผ)
<class 'str'>
Q2. ๋ณ์ s์ t์๋ ๊ฐ๊ฐ ๋ฌธ์์ด์ด ๋ฐ์ธ๋ฉ ๋์ด์๋ค.
s = "hello"
t = "python"
๋ ๋ณ์๋ฅผ ์ด์ฉํ์ฌ ์๋์ ๊ฐ์ด ์ถ๋ ฅํด๋ณด๊ธฐ
์คํ ์:
hello! python
์ ๋ต)
s = "hello"
t = "python"
print(s + "! " + t)
๊ฒฐ๊ณผ)
hello! python
Q3. ์๋ ์ฝ๋์ ์คํ ๊ฒฐ๊ณผ๋ฅผ ์์ํ๊ธฐ
a = "3"
b = "4"
print(a + b)
print("Hi" * 3)
์์ )
a = "3"
b = "4"
print(a+b) #๋ด ์์์ 34
print("Hi" * 3) #๋ด ์์์ HiHiHi
๊ฒฐ๊ณผ)
34
HiHiHi
Q4. ํ๋ฉด์ '-'๋ฅผ 80๊ฐ ์ถ๋ ฅํ๊ธฐ
์์ )
print("-"*80)
๊ฒฐ๊ณผ)
--------------------------------------------------------------------------------
Q5. ๋ณ์์ ๋ค์ ๋ฌธ์์ด์ด ๋ฐ์ธ๋ฉ๋์ด ์๋ค.
t1 = 'python'
t2 = 'java'
๋ณ์์ ๋ฌธ์์ด ๋ํ๊ธฐ์ ๋ฌธ์์ด ๊ณฑํ๊ธฐ๋ฅผ ์ฌ์ฉํด์ ์๋์ฒ๋ผ ์ถ๋ ฅํ๊ธฐ
์คํ ์:
python java python java python java python java
์์ )
t1 = "python"
t2 = "java"
print((t1 + " " + t2 + " ")*4)
๊ฒฐ๊ณผ)
python java python java python java python java
2.3 ๋ฆฌ์คํธ p. 88
๋ฆฌ์คํธ๋ ์ฌ๋ฌ ๊ฐ์ ๊ฐ๋ค์ ํ๋์ ๋ณ์๋ก ๋ฌถ์ด์ ์ฌ์ฉํ๋ ํ์
์ด๋ค. ์์์ ๊ฐ๋ค์ ๋ณ๊ฒฝ ๊ฐ๋ฅํ๋ค.
[,] ๋๊ดํธ๋ฅผ ์ด๊ณ ๋ซ๋๋ค. ๋ฐฐ์ด๊ณผ ํก์ฌํ ๊ฐ๋
์ด๋ค.
[0,0,0,0]์ฒ๋ผ ๋๊ดํธ๋ฅผ ์ด๊ณ ๋ซ์ผ๋ฉด ๋ฆฌ์คํธ ์๋ฃํ์ด๋ค.
[0,0,0,0]
[1, 2, 3]
li = [10,"์ฅ๋๊ฑด",23,"์์ธ]
li | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
li[0] | li[1] | li[2] | li[3] |
(,) ์๊ดํธ๋ ํํ ์๋ฃํ์ด๋ค. ex. ('red', 4, 'python', True)
{,} ์ค๊ดํธ๋ ๋์
๋๋ฆฌ ์๋ฃํ์ด๋ค. ex. {dict = ['๋ฒํธ':10, '์ฑ๋ช
': '์ฅ๋๊ฑด', '๋์ด':23, '์ฌ๋๊ณณ':'์์ธ'}
์์ 1) ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ซ์ํ ๋ณ์ 4๊ฐ๋ฅผ ์ ์ธํ์ฌ ์
๋ ฅ ๋ฐ์ ๊ฐ๋ค์ ํฉ์ ์ถ๋ ฅํ๋ค.
Python์ input์ Java์ Scanner์ ๊ฐ๋ค.
a, b, c, d = 0, 0, 0, 0
hap = 0
a = int(input("1๋ฒ์งธ ์ซ์ : ")) #์ซ์๋ฅผ ์
๋ ฅ๋ฐ์ a์ ๊ทธ ๊ฐ์ ๋๋น
b = int(input("2๋ฒ์งธ ์ซ์ : "))
c = int(input("3๋ฒ์งธ ์ซ์ : "))
d = int(input("4๋ฒ์งธ ์ซ์ : "))
hap = a + b + c + d
print("ํฉ๊ณ => %d" % hap) #%d์๋ % ๋ค์ ์ ์ธํ hap๊ฐ์ด ๋์
์๋๋ ์๋ฐ์ ์์์ด๋ค.
//Java
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int hap = 0;
System.out.println("1๋ฒ์งธ ์ซ์: ");
int a = Integer.parseInt(s.next()); //ํค๋ณด๋๋ก ์
๋ ฅ ๋ฐ๋๋ค.
System.out.println("2๋ฒ์งธ ์ซ์: ");
int b = Integer.parseInt(s.next());
System.out.println("3๋ฒ์งธ ์ซ์: ");
int c = Integer.parseInt(s.next());
System.out.println("4๋ฒ์งธ ์ซ์: ");
int d = Integer.parseInt(s.next());
hap = a + b + c + d;
System.out.println("ํฉ๊ณ ==> %d", hap)
๊ฒฐ๊ณผ)
1๋ฒ์งธ ์ซ์ : 10
2๋ฒ์งธ ์ซ์ : 20
3๋ฒ์งธ ์ซ์ : 30
4๋ฒ์งธ ์ซ์ : 40
ํฉ๊ณ => 100
์์ 2) ๋ฆฌ์คํธ ๋ณ์๋ฅผ ์ ์ธํ์ฌ ์์ 1๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ๋ง๋ค์ด๋ณธ๋ค.
[0,0,0,0]์ฒ๋ผ ๋๊ดํธ๋ฅผ ์ด๊ณ ๋ซ์ผ๋ฉด ๋ฆฌ์คํธ ์๋ฃํ์ด๋ค.
aa = [0, 0, 0, 0] #์ซ์ 4๊ฐ๋ฅผ ์ ์ฅํ๋ ๋ฆฌ์คํธ ๋ณ์
hap = 0
aa[0] = int(input("1๋ฒ์งธ ์ซ์ : ")) #์ฌ์ฉ์๊ฐ ์
๋ ฅํ ์ซ์๋ฅผ ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ ์์์ ๋์
aa[1] = int(input("2๋ฒ์งธ ์ซ์ : "))
aa[2] = int(input("3๋ฒ์งธ ์ซ์ : "))
aa[3] = int(input("4๋ฒ์งธ ์ซ์ : "))
hap = aa[0] + aa[1] + aa[2] + aa[3]
print("ํฉ๊ณ2 => %d" % hap) #์
๋ ฅ๋ฐ์ 4๊ฐ์ ๊ฐ๋ค์ ํฉ์ณ์ ์ฝ์์ฐฝ์ ์ถ๋ ฅ
๊ฒฐ๊ณผ)
1๋ฒ์งธ ์ซ์ : 1
2๋ฒ์งธ ์ซ์ : 2
3๋ฒ์งธ ์ซ์ : 3
4๋ฒ์งธ ์ซ์ : 4
ํฉ๊ณ2 => 10
์์ 3) ๋ฆฌ์คํธ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ๊ณ ์ ๋ ์์์ ๊ฐ์๊ฐ ์๋ ์ ๋์ ์ธ ์์๊ฐ ๋ง๋ค์ด์ง๋ค.
len = ํ์ด์ฌ์์ ๋ฆฌ์คํธ์ ๊ธธ์ด (๋ฐ๋ฉด ์๋ฐ๋ length)
aa = []
aa.append(0) #๋ฐฐ์ด์ ์ถ๊ฐํ๋ค.
aa.append(0)
aa.append(0)
aa.append(0)
print(len(aa)) #๋ฐฐ์ด์ ๊ธธ์ด
print(aa)
bb = []
for i in range(0, 100):
bb.append(i)
print(bb)
๊ฒฐ๊ณผ)
4
[0, 0, 0, 0]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
์๋ฐ์ ๋ฐฐ์ด์ ํ์ด์ฌ์ ๋ฆฌ์คํธ์ ๊ฐ๋ค.
ํ์ด์ฌ์ [,]๊ฐ ๋ฆฌ์คํธ ํ์
์ด๋ค.
//java
//๋ณ์
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int hap = a + b + c + d;
//๋ฐฐ์ด
int[] a = {0,0,0,0}
int hap = a[0] + a[1] + a[2] + a[3]
์์ 4) ๋ฆฌ์คํธ์์ ์์ ๊ฐ์ ๊ฐ์ ธ์ค๊ธฐ ์ํ ๋ค์ํ ์์น ๊ฐ(index ๊ฐ)์ ์ ์ฉํ๋ค.
ํ์ด์ฌ์ ๋ฆฌ์คํธ ์๋ฃํ์ ์๋ฐ์ ๋ฐฐ์ด์ฒ๋ผ ์ ์ฅ์ด ๋๋ค.
aa[-1]: ๋ง์ง๋ง ๊ฐ
aa[-2]: ๋ง์ง๋ง์์ ์์ ๊ฐ
์ฐธ๊ณ : https://dojang.io/mod/page/view.php?id=1311
aa = [10, 20, 30, 40] #๋ฆฌ์คํธ ๋ณ์๋ฅผ ์ ์ธ
print("aa[-1]์ %d, aa[-2]๋ %d" % (aa[-1], aa[-2]))
# % ๋ค์ ์๋ aa[-1]์ ์ฒซ๋ฒ์งธ %d aa[-2]๋ ๋ ๋ฒ์งธ %d์ ๋์
print(aa[0:2]) #aa ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ๋ถํฐ ๋ ๋ฒ์งธ ์์ ๊ฐ์ ์ถ๋ ฅ
print(aa[2:4]) #aa ๋ฆฌ์คํธ์ ์ธ ๋ฒ์งธ๋ถํฐ ๋ค ๋ฒ์งธ ์์ ๊ฐ์ ์ถ๋ ฅ
print(aa[0:]) #aa ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ๋ถํฐ ๋๊น์ง ์์ ๊ฐ์ ์ถ๋ ฅ
๊ฒฐ๊ณผ)
aa[-1]์ 40, aa[-2]๋ 30
[10, 20]
[30, 40]
[10, 20, 30, 40]
์์ 5) ๋ฆฌ์คํธ์์ ๋ค์ํ๊ฒ ์ฌ์ฉ ํ ์ ์๋ ํจ์๋ฅผ ์ ์ฉํ๋ค. p. 90
extend ํ์ฅ์ํค๋ค (์๋ฐ์ ์์๊ณผ๋ ๋ค๋ฆ)
aa.append(40): append๋ ์ ์ผ ๋ง์ง๋ง์ ๊ฐ์ ์ถ๊ฐํ๋ค.
aa.insert(2, 222): insert๋ ๋ด๊ฐ ์ถ๊ฐํ๊ณ ์ถ์ ๊ณณ์ ์ถ๊ฐํ๋ค.
์ฐธ๊ณ
aa = [30, 10, 20]
print("ํ์ฌ์ ๋ฆฌ์คํธ: %s" %aa)
aa.append(40) #์์๋ฅผ ํ๋ ์ถ๊ฐ
print("append ํ์ ๋ฆฌ์คํธ: %s" %aa)
aa.pop() #aa ๋ฆฌ์คํธ์ ์ ์ผ ๋ง์ง๋ง ์์๋ฅผ ๋บ๋ค.
print("pop ํ์ ๋ฆฌ์คํธ: %s" %aa)
aa.sort() #๋ฆฌ์คํธ ์์ ๊ฐ๋ค์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ
print("sort ํ์ ๋ฆฌ์คํธ: %s" %aa)
aa.reverse() #๋ฆฌ์คํธ ์์ ๊ฐ๋ค์ ์ญ์์ผ๋ก ์ ๋ ฌ
print("reverse ํ์ ๋ฆฌ์คํธ: %s" %aa)
aa.insert(2, 222) #aa ๋ฆฌ์คํธ์ ์ธ ๋ฒ์งธ ์์น์ 222๊ฐ์ ์ถ๊ฐ
print("insert(2, 222) ํ์ ๋ฆฌ์คํธ: %s" %aa)
print("20๊ฐ์ ์์น: %d" %aa.index(20))
aa.remove(222) #222 ์์ ๊ฐ์ ๋ฆฌ์คํธ์์ ์ญ์
print("remove(222) ํ์ ๋ฆฌ์คํธ: %s" %aa)
aa.extend([77,88,77]) #๋ค๋ฅธ ๋ฆฌ์คํธ๋ฅผ ํ์ฅ
print("extend([77,88,77]) ํ์ ๋ฆฌ์คํธ: %s" %aa)
print("77๊ฐ์ ๊ฐ์: %d" % aa.count(77))
๊ฒฐ๊ณผ)
ํ์ฌ์ ๋ฆฌ์คํธ: [30, 10, 20]
append ํ์ ๋ฆฌ์คํธ: [30, 10, 20, 40]
pop ํ์ ๋ฆฌ์คํธ: [30, 10, 20]
sort ํ์ ๋ฆฌ์คํธ: [10, 20, 30]
reverse ํ์ ๋ฆฌ์คํธ: [30, 20, 10]
insert(2, 222) ํ์ ๋ฆฌ์คํธ: [30, 20, 222, 10]
20๊ฐ์ ์์น: 1
remove(222) ํ์ ๋ฆฌ์คํธ: [30, 20, 10]
extend([77,88,77]) ํ์ ๋ฆฌ์คํธ: [30, 20, 10, 77, 88, 77]
77๊ฐ์ ๊ฐ์: 2
์์ 6) ๋ค์ฐจ์ ๋ฆฌ์คํธ๊ฐ ์ง์๋๋ค.
2์ฐจ์ ๋ฆฌ์คํธ๋ฅผ ์ ์ธํ๊ณ 2์ฐจ์ ๋ฆฌ์คํธ ์์ ๊ฐ์ ์ถ๋ ฅํ๋ค.
aa = [[1,2,3,4],
[5,6,7,8],
[9,10,11,12]]
print(aa[0][0])
print(aa[0])
print(aa[1][2])
๊ฒฐ๊ณผ)
1
[1, 2, 3, 4]
7
2.4 ํํ p. 91
๋ณ์์ ๊ฐ์ ์ ์ฅํ ๋ ( )(๊ดํธ)๋ก ๋ฌถ์ด์ฃผ๋ฉด ํํ์ด ๋๋ฉฐ ๊ฐ ๊ฐ์ ,(์ฝค๋ง)๋ก ๊ตฌ๋ถํด์ค๋๋ค. ๋๋, ๊ดํธ๋ก ๋ฌถ์ง ์๊ณ ๊ฐ๋ง ์ฝค๋ง๋ก ๊ตฌ๋ถํด๋ ํํ์ด ๋ฉ๋๋ค.
์ฐธ๊ณ : https://dojang.io/mod/page/view.php?id=2201
๋ฆฌ์คํธ์ ๊ฑฐ์ ์ ์ฌํ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์์ง๋ง ๋ฆฌ์คํธ๋ ์์ ๊ฐ์ ๋ณ๊ฒฝ ํ ์ ์์ง๋ง
ํํ์ ํ ๋ฒ ๊ฐ์ ์ ํ๋ฉด ๋ด๋ถ์ ๊ฐ์ ๋ฐ๊ฟ ์๊ฐ ์๋ค. ์ฝ๊ธฐ ์ ์ฉ์ด๋ค.
(,) ์๊ดํธ๋ก ์ด๊ณ ๋ซ๋๋ค. ๊ดํธ๋ ์๋ต ๊ฐ๋ฅํ๋ค.
('red', 4, 'python', True)
(1, 2, 3)
tu = (10, "์ฅ๋๊ฑด", 23, "์์ธ")
tu | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
tu[0] | tu[1] | tu[2] | tu[3] |
์์ 1) ๋ฌธ์์ด๊ณผ ํํ ํ์ ๊ด๊ณ๋ฅผ ๋ณด์ฌ์ค๋ค.
str = "ํ์ด์ฌ ๋ฌธ์์ด"
print(str[0])
print(str[-1])
#str[-1] = '๋ ฌ' #ํํ์ ์์ ํ ์ ์๋ค.
card = 'red', 4, 'python', True
print(card)
print(card[1])
#card[0] = 'blue' #ํํ์ ์์ ํ ์ ์๋ค.
๊ฒฐ๊ณผ)
ํ
์ด
('red', 4, 'python', True)
4
์์ 2) ๋ฌธ์์ด๊ณผ ํํ์ ๊ด๊ณ๋ฅผ ์ค๋ช
ํ๋ค.
์ ์ฒด ๋ฌธ์์ด์ ๋ฐ๊ฟ ์๋ ์์ง๋ง, ํ๋๋ง์ ๋ฐ๊ฟ ์ ์๋ค.
one = 'ํ๋' #๋ฌธ์์ด ์ ์ธ
print(type(one))
one = "์" #๋ฌธ์์ด ๊ฐ ์ ์ฒด๋ฅผ ๋ณ๊ฒฝ
print(one)
two = '๋'
print(type(two))
#two[0] = 'ํฌ' #two ๋ณ์์ ์ฒซ ๋ฒ์จฐ ์์ ๊ฐ ๋ณ๊ฒฝ(์ค๋ฅ)
print(two[0])
๊ฒฐ๊ณผ)
<class 'str'>
์
<class 'str'>
๋
์์ 3) ํํ ๋ณ์๋ก ์ ์ธ๋ ๊ฐ๊ฐ์ ์์ ๊ฐ๋ค์ ํ๋์ ๋ณ์๋ก ๋ฆฌํด ๋ฐ๋๋ค.
ํ์ด์ฌ์ ๋๋ฌธ์๋ก True, False์ด๋ค.
card = 'red', 4, 'python', True #card ํํ์ ๋ค์ํ ํ์
์ ์์๋ก ์ ์ธ
a, b, c, d = card #card์ 4๊ฐ์ ์์ ๊ฐ๋ค์ a-d ๋ณ์์ ํ ๋น
print(a)
print(b)
print(c)
d = False #d ๋ณ์์ ๊ฐ์ ์์
print(d)
๊ฒฐ๊ณผ) ํํ ์ผ ๋๋ ๊ฐ์ ๋ชป ๋ฐ๊พธ๋ ๋ฐ ์ผ๋ฐ ๋ณ์๊ฐ ๋๋ฏ๋ก ๊ฐ์ ๋ฐ๊ฟ ์ ์๋ค.
red
4
python
False
๋ฌธ์ ํ์ด๋ณด๊ธฐ)
Q1) ์ํ ์ ๋ชฉ์ movie_rank ์ด๋ฆ์ ๋ฆฌ์คํธ์ ์ ์ฅํด๋ณด์ธ์. (์์ ์ ๋ณด๋ ์ ์ฅํ์ง ์๋๋ค.)
์์ ์ํ
1 ๋ฅํฐ ์คํธ๋ ์ธ์ง
2 ์คํ๋ฆฟ
3 ๋ญํค
Q2) moive_rank ๋ฆฌ์คํธ ๋งจ ๋ง์ง๋ง์ "๋ฐฐํธ๋งจ"์ ์ถ๊ฐํ๋ผ.
Q3) movie_rank ๋ฆฌ์คํธ์๋ ์๋์ ๊ฐ์ด ๋ค ๊ฐ์ ์ํ ์ ๋ชฉ์ด ๋ฐ์ธ๋ฉ๋์ด ์๋ค.
"์ํผ๋งจ"์ "๋ฅํฐ ์คํธ๋ ์ธ์ง"์ "์คํ๋ฆฟ" ์ฌ์ด์ ์ถ๊ฐํ๋ผ.
movie_rank = ['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์คํ๋ฆฟ', '๋ญํค', '๋ฐฐํธ๋งจ']
Q4) movie_rank ๋ฆฌ์คํธ์์ '๋ญํค'๋ฅผ ์ญ์ ํ๋ผ.
movie_rank = ['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์ํผ๋งจ', '์คํ๋ฆฟ', '๋ญํค', '๋ฐฐํธ๋งจ']
Q5) movie_rank ๋ฆฌ์คํธ์์ '์คํ๋ฆฟ'๊ณผ '๋ฐฐํธ๋งจ'์ ์ญ์ ํ๋ผ.
movie_rank = ['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์ํผ๋งจ', '์คํ๋ฆฟ', '๋ฐฐํธ๋งจ']
์ฝ๋)
movie_rank = ['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์คํ๋ฆฟ', '๋ญํค']
print(movie_rank)
movie_rank.append('๋ฐฐํธ๋งจ')
print(movie_rank)
movie_rank.insert(1,'์ํผ๋งจ')
print(movie_rank)
movie_rank.remove('๋ญํค')
print(movie_rank)
movie_rank.remove('์คํ๋ฆฟ')
movie_rank.remove('๋ฐฐํธ๋งจ')
print(movie_rank)
๊ฒฐ๊ณผ)
['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์คํ๋ฆฟ', '๋ญํค']
['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์คํ๋ฆฟ', '๋ญํค', '๋ฐฐํธ๋งจ']
['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์ํผ๋งจ', '์คํ๋ฆฟ', '๋ญํค', '๋ฐฐํธ๋งจ']
['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์ํผ๋งจ', '์คํ๋ฆฟ', '๋ฐฐํธ๋งจ']
['๋ฅํฐ ์คํธ๋ ์ธ์ง', '์ํผ๋งจ']
Q6) ๋ค์ ์ฝ๋๋ฅผ ์คํํด๋ณด๊ณ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ์์ธ์ ์ค๋ช
ํ๋ผ.
t = (1, 2, 3)
t[0] = 'a'
TypeError: 'tuple' object does not support item assignment
ํํ์ ์์ ํ ์ ์๋ค.
2.5 ๋์ ๋๋ฆฌ
key๊ฐ๊ณผ value๊ฐ์ด ํ ์์ผ๋ก ์ ์ฅ๋๋ ํ์
์ด๋ค.
value ๊ฐ์ ํํ๊ณผ ๋ค๋ฅด๊ฒ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค.
{,} ์ค๊ดํธ๋ก ์ด๊ณ ๋ซ๋๋ค.
{dict = ["๋ฒํธ":10, "์ฑ๋ช
": "์ฅ๋๊ฑด", "๋์ด":23, "์ฌ๋๊ณณ":"์์ธ"}
dict["์ฌ๋๊ณณ"] = "๊ฒฝ๊ธฐ๋"
dic (value) | 10 | ์ฅ๋๊ฑด | 23 | ์์ธ |
(key) | dic[๋ฒํธ] | dic[์ฑ๋ช ] | dic[๋์ด] | dic[์ฌ๋๊ณณ] |
์์ 1)
dict = {'๋ฒํธ':10, '์ฑ๋ช
': '์ฅ๋๊ฑด', '๋์ด':23, '์ฌ๋๊ณณ':'์์ธ'}
print(dict)
print(type(dict))
print(dict['๋์ด'])
dict['๋์ด'] = 24
print(dict['๋์ด'])
dict['์ง์
'] = '๋ฐฐ์ฐ'
print(dict)
print(dict.keys())
print(dict.values())
print('์ฌ๋๊ณณ' in dict) #ํค ๊ฐ ์กด์ฌ ์ฌ๋ถ: True
del dict['์ฌ๋๊ณณ']
print('์ฌ๋๊ณณ' in dict) #ํค ๊ฐ ์กด์ฌ ์ฌ๋ถ: False
print(dict)
๊ฒฐ๊ณผ)
{'๋ฒํธ': 10, '์ฑ๋ช
': '์ฅ๋๊ฑด', '๋์ด': 23, '์ฌ๋๊ณณ': '์์ธ'}
<class 'dict'>
23
24
{'๋ฒํธ': 10, '์ฑ๋ช
': '์ฅ๋๊ฑด', '๋์ด': 24, '์ฌ๋ ๊ณณ': '์์ธ', '์ง์
': '๋ฐฐ์ฐ'}
dict_keys(['๋ฒํธ', '์ฑ๋ช
', '๋์ด', '์ฌ๋ ๊ณณ', '์ง์
'])
dict_values([10, '์ฅ๋๊ฑด', 24, '์์ธ', '๋ฐฐ์ฐ'])
True
False
{'๋ฒํธ': 10, '์ฑ๋ช
': '์ฅ๋๊ฑด', '๋์ด': 24, '์ง์
': '๋ฐฐ์ฐ'}