Python을 작성 중이고 터미널에 특정 줄만 표시하고 싶다면 어떤 명령을 사용해야 합니까? 예를 들어, 내 프로그램은 다음과 같습니다. print("첫 번째 줄") print("두 번째 줄") print("세 번째 줄")
두 번째 줄의 코드만 터미널에 표시되기를 원합니다. print("두 번째 줄") - 전체 프로그램을 실행하는 데 사용하는 명령은 pythonprogramname.py인데 특정 줄을 어떻게 인쇄합니까?
답변1
n
파일의 행을 보고 싶다고 가정하면 다음과 같이 간단히 수행할 수 있습니다.
sed -n '42p' yourfile.py
42
보고 싶은 줄 번호로 바꾸세요 .
편집 후: 원하는 경우구현하다이 코드는 다음으로 파이프하면 됩니다 python
.
sed -n '42p' yourfile.py | python
답변2
대체 awk
솔루션:
awk "NR==2" programname.py
답변3
bash/shell이 익숙하지 않다면 Python 스크립트를 작성하여 이를 수행할 수도 있습니다!
#!usr/bin/env python
# usage: ./script file line_no
import sys
data = ''
with open(sys.argv[1],'r') as f:
data = f.read()
data = data.split('\n')
try:
print data[sys[2] +1]
except IndexError:
print "Line doesn't exist"
참고: 이것은 단지 빠르고 더러운 예일 뿐입니다. 원하는 대로 개선할 수 있습니다.
답변4
@DoorKnob 답변을 바탕으로 누구든지 검색에서 이를 발견하면출력의 n번째 줄을 찾고 싶습니다.. 그럼 이렇게 하세요.
run-program | sed -n '2p'
그러면 출력의 42번째 줄이 인쇄됩니다.run-program
예를 들어
python yourfile.py | sed -n `2p`