티스토리 뷰

반응형

 

 

 Pythonic Code란?

 

"When people talk about pythonic code, they mean that the code uses Python idioms well, that it’s natural or displays fluency in the language."

 

- Pythonic Code란 Python의 문법으로 코드를 작성하는 것이다. 여기서 Python의 문법 사용이란, 단순히 Python이 가진 기능을 사용한다는 뜻이 아니라 다른 언어가 가지고 있지 않은 Python만의 특징과 문법을 사용하는 것을 의미한다.

 

 

 

 

 

 

 예시 1

 

1
2
3
4
5
6
7
8
9
10
11
x=[123456]
 
result = []
 
for idx in range(len(x));
 
    result.append(x[idx] * 2)
 
result
 
Output: [24681012]
cs

 

 

- 위의 코드가 일반적인 코드로 x의 각 요소에 2를 곱하는 코드이다. 위의 코드는 문제가 없지만 Pythonic 하지 못하다. Pythonic한 코드는 아래와 같다. 

 

1
2
3
4
5
x=[123456]
 
[(element * 2for element in x]
 
Output: [246810]
cs

 

- 훨씬 간결하며 Python의 고유한 특징인 List Comprehension을 사용한 코드이다. 아래와 같은 코드를 활용할 필요가 있다.

 

 

 

 

 

 

 

 예시 2

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
x=[12345678910]
 
result = []
 
for idx in range(len(x)):
 
    if x[idx] % 2 == 0:
 
        result.append(x[idx] * 2)
 
    else:
 
        result.append(x[idx])
 
result
 
Output: [1438512716920]
cs

 

 

- 위의 코드는 일반적 코드이고, 아래의 코드는 Pythonic한 간결한 코드이다.

 

1
2
3
[(element * 2 if element % 2 == 0 else element) for element in x]
 
Output: [1438512716920]
cs

 

 

 

 

 

https://hub.packtpub.com/write-python-code-or-pythonic-code/#:~:text=What%20does%20Pythonic%20mean%3F,adopted%20by%20the%20Python%20community.
반응형
댓글