Python-I/O、条件文、繰り返し文、関数
40427 ワード
n/a.ターゲット
デフォルトI/O
input()関数
map()関数
例)スペースで区切られたデータを入力する場合:
例)スペースで区切られたデータの数が少ない場合?
<例>
# 데이터의 개수 입력
n = int( input() )
# 각 데이터를 공백을 기준으로 구분하여 입력
data = list( map( int, input().split() ) )
data.sort( reverse = True )
# 각 데이터를 문자열로 출력
data2 = input().split()
# 세개의 변수를 입력받아 출력
a, b, c = map( int, input().split() )
print( n )
print( data )
print( data2 )
print( a, b, c )
<結果値>
입력 ==========
5
10 20 30 40 50
50 40 30 20 10
1 2 3
출력 ==========
5
[50, 40, 30, 20, 10]
['50', '40', '30', '20', '10']
1 2 3
クイック入力
<例>
import sys
# 문자열 입력 받기
data = sys.stdin.readline().rstrip()
print(data)
<結果値>
입력 ==========
1 2 3 4 5
출력 ==========
1 2 3 4 5
一般的な標準出力方法
デフォルトでは、
<例>
# 출력할 변수들
a = 1
b = 2
print( a, b)
print( 7, end=" ")
print( 8, end=" ")
# 출력할 변수
answer = 7
print( "정답은 " + str(answer) + "이다." )
<結果値>
1 2
7 8 정답은 7이다.
f-string
<例>
answer = 7
print( f"정답은 {answer}이다.")
<結果値>
정답은 7이다.
条件文
<例>
x = 15
if x >= 10:
print("x >= 10 ")
if x >= 0:
print("x >= 0")
if x >= 30:
print("x >= 30")
<結果値>
x >= 10
x >= 0
インデント
<例>
score = 85
if score >= 70 :
print( '성적이 70점 이상입니다. ')
if score >= 90 :
print('우수한 성적입니다.')
else :
print('성적이 70점 미만입니다.')
print('조금 더 분발하세요.')
print( '프로그램을 종료합니다.')
<結果値>
성적이 70점 이상입니다.
프로그램을 종료합니다.
条件文の基本形式
<例>
a = -15
if a >= 0 :
print( "a >= 0")
elif a >= -10 :
print("0 > a >= -10")
else:
print("-10 > a")
<結果値>
-10 > a
比較演算子
2つの特定の値を比較するための
注意
論理演算子
<例>
if True or False:
print("Yes")
a = 15
if a <= 20 and a >= 0 :
print( "Yes" )
<結果値>
Yes
Yes
その他の演算子
passキーワード
<例>
score = 85
if score >= 80 :
pass # 나중에 작성할 소스코드
else :
print( '성적이 80점 미만입니다.' )
print( '프로그램을 종료합니다.' )
<結果値>
프로그램을 종료합니다.
条件文の簡略化
<例>
score = 85
if score >= 80 : result = "Success"
else : result = "Fail"
print(result)
<結果値>
Success
条件式<例>
score = 85
result = "Success" if score >= 80 else "Fail"
print(result)
<結果値>
Success
条件文の不等式
他のプログラミングとは異なり、Pythonは条件文に数学的不等式を保持している.
<コードスタイル1>
x = 15
if x > 0 and x < 20 :
print( "x는 0이상 20 미만의 수이다." )
<コードスタイル2>
x = 15
if 0 < x < 20:
print( "x는 0이상 20 미만의 수" )
複文
<1~9のすべての整数の合計例(while文)>
i = 1
result = 0
# i가 9보다 작거나 같을 때 아래 코드를 반복적으로 실행
while i <= 9:
if i % 2 == 1:
result += i
i += 1
print( result )
<結果値>
25
文脈
i = 1
result = 0
# i가 9보다 작거나 같을 때 아래 코드를 반복적으로 실행
while i <= 9:
if i % 2 == 1:
result += i
i += 1
print( result )
25
<例>
array = [ 9, 8, 7, 6, 5 ]
for x in array:
print(x)
<結果値>
9
8
7
6
5
for文-range()
<例>
result = 0
# i는 1부터 9까지의 모든 값을 순회
for i in range( 1 , 10 ) :
result += i
print( result )
<結果値>
45
continueキーワード
<例>
result = 0
for i in range(1, 10):
if i % 2 == 0:
continue
result += i
print(result)
<結果値>
25
breakキーワード
<例>
i = 1
while True :
print( "현재 i의 값 : " , i)
if i == 5:
break
i += 1
<結果値>
현재 i의 값 : 1
현재 i의 값 : 2
현재 i의 값 : 3
현재 i의 값 : 4
현재 i의 값 : 5
<学生が合格したかどうかの例-特定の番号を含まない学生>
scores = [90,85,77,65,97]
cheating_student_list = {2,4}
for i in range(5):
if i + 1 in cheating_student_list:
continue
if scores[i] >= 80:
print(i + 1, "번 학생은 합격입니다.")
<結果値>
1 번 학생은 합격입니다.
5 번 학생은 합격입니다.
formatキーワードの使用
『九九九九九九例』
n = int( input() )
for i in range( 1, 10 ) : # 뒤에 10은 -> 10-1이라고 생각하면 됨
print( '{0} * {1} = {2}'.format( n, i, n * i ) ) # 즉 9번 돈다
上記の例に示すように、{0}、{1}および{2}リソース設定値1:1にマッピングされます.<結果値>
3
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
逆順で出力
<逆出力例>
n = int( input() )
for i in range( n, 0, -1 ) : # 두번째 매개변수 +1 까지 -1씩 감소
print( i )
<結果値>
5
5
4
3
2
1
n.関数
定義#テイギ#
def 함수명(매개변수):
실행할 소스코드
return 반환 값
<プラス記号関数の例1>
def add(a, b):
return a + b
print(add(3, 7))
<結果>
10
<プラス記号関数の例2>
def add(a, b):
print( "함수의 결과 : " , a + b )
add(3,7)
<結果>
함수의 결과 : 10
パラメータの指定
def 함수명(매개변수):
실행할 소스코드
return 반환 값
def add(a, b):
return a + b
print(add(3, 7))
10
def add(a, b):
print( "함수의 결과 : " , a + b )
add(3,7)
함수의 결과 : 10
<例>
def add(a ,b ):
print( "함수의 결과 : " , a + b )
add( b = 3, a = 7)
<結果値>
함수의 결과 : 10
グローバルキー
<例>
# 예제 1 =====
a = 0
def func():
global a
a += 1
for i in range(10):
func()
print(a)
# 예제 2 =====
array = [1,2,3,4,5]
def func() :
array = [3,4,5]
array.append(6)
print(array)
func()
print(array)
<結果値>
예제 1 =====
10
예제 2 =====
[3, 4, 5, 6]
[1, 2, 3, 4, 5]
複数の戻り値
<例>
def operator( a, b) :
add_var = a + b
subtract_var = a - b
multiply_var = a * b
divide_var = a / b
return add_var , subtract_var , multiply_var , divide_var
a, b, c, d = operator( 7, 3)
print( "a : " + str(a) + "\n"
,"b : " + str(b) + "\n"
,"c : " + str(c) + "\n"
,"d : " + str(d) )
<結果値>
a : 10
b : 4
c : 21
d : 2.3333333333333335
ランダ式
<例>
def add( a, b ):
return a + b
# 일반적인 add() 메서드 사용
print( add( 3, 7 ) )
# 람다 표현식으로 구현한 add() 메서드
print( ( lambda a, b: a + b )(3, 7) )
<結果値>
10
10
Ramda式の例-組み込み関数でよく使用されるRamda関数
array = [ ('홍길동', 50) , ('이순신', 32) , ('아무개',74) ]
def my_key(x) :
return x[1]
print( sorted( array, key = my_key) )
print( sorted( array, key = lambda x: x[1] ) )
<結果値>
[('이순신', 32), ('홍길동', 50), ('아무개', 74)]
[('이순신', 32), ('홍길동', 50), ('아무개', 74)]
ラムダ式の例-複数のリストに適用
list1 = [ 1, 2, 3, 4, 5]
list2 = [ 6, 7, 8, 9, 10]
result = map( lambda a, b : a + b , list1, list2 )
print( list( result ) )
<結果値>
[7, 9, 11, 13, 15]
< Reference Site > 董文娜https://www.youtube.com/watch?v=m-9pAwq1o3w&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=1
Reference
この問題について(Python-I/O、条件文、繰り返し文、関数), 我々は、より多くの情報をここで見つけました https://velog.io/@hanseo0109/Python-입출력-조건문-반복문-함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol