#값 교환
a,b = 10, 20
print(a, b)
a, b = b, a
print(a, b)
#변수 타입
a = 12314214213
print(type(a)) # <class 'int'>
b = 12.3231
print(type(b))# <class 'float'>
c = "student"
print(type(c)) # <class 'str'>
#출력 방식
print("number")
a, b, c = 1, 2, 3
print(a, b, c)
print("number : ", a, b, c)
print(a, b, c, sep=', ')
print(a, b, c, sep='')
print(a, b, c, sep='\n')
print(a)
print(b)
print(c)
print(a, end=' ')
print(b, end=' ')
print(c)
#변수입력과 연산자
a = input("숫자를 입력하세요 : ")
print(a)
a,b = input("숫자를 입력하세요 : ").split()
print(a + b) # 23
print(type(a)) # <class 'str'>
print(type(b)) # <class 'str'>
a,b = input("숫자를 입력하세요 : ").split()
a = int(a)
b = int(b)
print(a + b) # 5
print(type(a)) # <class 'int'>
print(type(b))
a,b = map(int, input("숫자를 입력하세요 : ").split())
print(a + b) # 5
a,b = map(int, input("숫자를 입력하세요 : ").split())
print(a + b)
print(a - b)
print(a * b)
print(a / b)
print(a // b)
print(a % b)
print(a ** b)
a = 4.3
b = 5
c = a + b
print(type(c)) # <class 'float'>
# 조건문(if분기문, 다중 if문)
a = 10
if a == 10:
print("10 입니다.")
else:
print("10 아닙니다.")
a = 13
if a >= 10:
if a % 2 == 1:
print("10보다 크고 홀수입니다.")
a = 7
if a > 5 and a < 10:
print("5와 10사이입니다.")
a = 7
if 5 < a < 10:
print("5와 10사이입니다.")
a = 88
if a > 90:
print("A")
elif a > 80:
print("B")
else:
print("C")
# 반복문(for, while, break, continue)
a = range(1, 11)
print(list(a))
for i in range(10):
print(i, end=" ")
for i in range(0, 10, +2):
print(i, end=" ")
a = range(1, 11)
b = list(a)
for i in b:
print(i, end=" ")
for i in range(10, 0, -2):
print(i)
i = 1
while i < 10:
print(i)
i = i + 1
i = 10
while i > 0:
print(i)
i = 1
while True:
print(i)
if i == 5:
break
i +=1
i = i - 1
for i in range (1, 10):
if i % 2 == 0:
continue
print(i)
for i in range(1, 11):
print(i)
if i > 15:
break
else:
print(13)
#반복문을 이용한 문제풀이
n = int(input())
for i in range(1, n+1):
print(i)
1) 1부터 n까지 홀수 출력
n = int(input("숫자를 입력하세요 : "))
for i in range(1, n+1):
if i % 2 == 1:
print(i)
2) 1부터 n까지 합 출력
n = int(input("숫자를 입력하세요 : "))
sum = 0
for i in range(1, n+1):
sum = sum + i
print(sum)
3) n의 약수 구하기
n = int(input("숫자를 입력하세요 : "))
for i in range(1, n+1):
if n % i == 0:
print(i)
#중첩반복문
for i in range(5):
print('i:', i, sep='', end=' ')
for j in range(5):
print('j:', j, sep='', end=' ')
print()
for i in range(5):
for j in range(5):
print('*', end=' ')
print()
for i in range(5):
for j in range(i+1):
print('*', end=' ')
print()
for i in range(5):
for j in range(5-i):
print('*', end=' ')
print()
sep (separator):
- print 함수는 기본적으로 여러 값을 출력할 때, 값들 사이에 공백을 삽입합니다.
- sep 인수를 사용하면 값들 사이에 삽입할 문자를 지정할 수 있습니다.
end (end character):
- print 함수는 기본적으로 출력이 끝난 후 줄바꿈 문자를 추가하여 다음 출력이 새로운 줄에 시작되도록 합니다.
- end 인수를 사용하면 출력이 끝난 후 추가할 문자를 지정할 수 있습니다.
#문자열과 내장함수
msg = "It is Time"
print(msg.upper())
print(msg.lower())
print(msg)
tmp = msg.upper()
print(tmp)
print(tmp.find('T'))
print(tmp.count('T'))
print(msg)
print(msg[:2])
print(msg[3:5])
print(len(msg))
for i in range(len(msg)):
print(msg[i], end=' ')
print()
for x in msg:
print(x, end=' ')
print()
for x in msg:
if x.isupper():
print(x, end=' ')
print()
for x in msg:
if x.islower():
print(x, end=' ')
print()
msg2 = "It 3 is happy"
for i in msg2:
if i.isalpha():
print(i, end='')
print()
tmp = 'AZ'
for x in tmp:
print(ord(x))
tmp = 65
print(chr(tmp))
** 자바 **
public class Main {
public static void main(String[] args) {
String msg2 = "It 3 is happy";
for (int i = 0; i < msg2.length(); i++) {
char c = msg2.charAt(i);
System.out.println(c);
}
}
}
#리스트와 내장함수(1)
import random as r
b = list()
print()
a = [1,2,3,4,5]
print(a[0])
b = list(range(1, 11))
print(b)
c = a + b
print(c)
print(a)
a.append(6)
print(a)
a.insert(3, 7)
print(a)
a.pop()
print(a)
a.pop(3)
print(a)
a.remove(4)
print(a)
print(a.index(5))
a = list(range(1, 11))
print(a)
print(sum(a))
print(max(a))
print(min(a))
print(min(7, 5))
print(min(7,3,5))
print(a)
r.shuffle(a)
print(a)
a.sort()
print(a)
a.sort(reverse = True)
print(a)
a.clear()
print(a)
#리스트와 내장함수(2)
a = [23, 12, 36, 53, 19]
print(a[:3])
print(a[1:4])
print(len(a))
for i in range(len(a)):
print(a[i], end=' ')
print()
for x in a:
print(x, end=' ')
print()
for x in a:
if x % 2 ==1:
print(x, end=' ')
print()
for x in enumerate(a): # (인덱스, 값)
print(x)
a = (1,2,3,4,5)
# a[0] = 7 튜플은 변경 불가 -> 자바에서 배열 int[] a = [1,2,3,4,5]
print(a)
a = [1,2,3,4,5]
a[0] = 7
print(a)
for x in enumerate(a):
print(x[0], x[1])
print()
for index, value in enumerate(a):
print(index, value)
print()
if all(50 >x for x in a):
print("YES")
else:
print("NO")
# all() 함수는 주어진 iterable(반복 가능한 객체) 내의 모든 요소가 참(True)일 때 참(True)을 반환하는 내장 함수입니다.
if any(5 >x for x in a):
print("YES")
else:
print("NO")
Java의 배열과 Python의 튜플은 몇 가지 유사점이 있지만, 중요한 차이점도 있습니다. 다음은 둘의 비교입니다.
유사점
- 고정 길이:
- Java 배열: 배열의 크기는 한 번 생성되면 변경할 수 없습니다.
- Python 튜플: 튜플의 크기도 한 번 생성되면 변경할 수 없습니다.
- 인덱스를 통한 접근:
- Java 배열: 배열의 요소는 인덱스를 통해 접근할 수 있습니다.
- Python 튜플: 튜플의 요소도 인덱스를 통해 접근할 수 있습니다.
차이점
- 변경 가능성:
- Java 배열: 배열의 요소는 변경할 수 있습니다. 예를 들어, a[0] = 7은 유효한 코드입니다.
- Python 튜플: 튜플의 요소는 변경할 수 없습니다. a[0] = 7은 오류를 발생시킵니다.
- 자료형:
- Java 배열: 배열은 같은 자료형의 요소들만 가질 수 있습니다. 예를 들어, int[], String[] 등.
- Python 튜플: 튜플은 다양한 자료형의 요소들을 가질 수 있습니다. 예를 들어, (1, "Hello", 3.14).
- 기능:
- Java 배열: 기본적인 배열로, 추가적인 메서드나 기능이 없습니다. 배열 관련 작업을 하려면 java.util.Arrays 클래스와 같은 도우미 클래스를 사용해야 합니다.
- Python 튜플: 튜플은 다양한 내장 메서드와 기능을 제공합니다. 예를 들어, count(), index() 등의 메서드를 사용할 수 있습니다.
#2차원 리스트 생성과 접근
a = [[0]*3 for _ in range(3)]
print(a)
a[0][1] = 1
print(a)
a[1][1] = 2
print(a)
for x in a:
print(x)
for x in a:
for y in x:
print(y, end=' ')
print()
#함수 만들기
def add(a, b):
c = a + b
print(c)
add(2, 3)
def add(a, b):
c = a + b
return c
x = add(3,2)
print(x)
def add(a, b):
c = a + b
return c
x = add(3,2)
print(x)
def isPrime(x):
for i in range(2, x):
if x % 2 == 0:
return False
return True
a = [12, 13, 7, 9, 19]
for y in a:
if isPrime(y):
print(y, end=' ')
#람다 함수
def plus_one(x):
return x + 1
print(plus_one(1))
plus_two = lambda x: x+2
print(plus_two(1))
a = [1,2,3]
print(list(map(plus_two, a)))
print(list(map(lambda x: x+1, a)))