728x90
반응형
문제
파일의 지정된 열에서 문자열을 추출해야 합니다.
프로그램은 열의 번호와 파일 경로를 커맨드 라인 argument로 받게 됩니다.
마지막으로, 열에는 1부터 시작하는 번호가 매겨집니다. 파일의 열이 공백(" ")으로 구분되어 있다고 가정할 수 있습니다.
import sys
def fileView(file, w_idx):
print(file, w_idx)
f = open(file, 'r')
while True:
line = f.readline()
if not line: break
lst = line.split() # 단어 공백으로 분리
if w_idx > 0 and w_idx < len(lst):
print(lst[w_idx])
else:
print(line)
f.close()
arg_cnt = len(sys.argv) # 1:python , 2:text명 / 1:python , 2:단어번호, 3:text명
# print('arg = ',arg_cnt)
# for i in range(arg_cnt):
# print('arg[',i,']',sys.argv[i])
if arg_cnt <= 1: # python cat.py
print('text 파일을 입려하세요')
exit(0) # 종료
elif arg_cnt == 2: # python cat.py 1
if sys.argv[1].isdigit(): # 숫자인지 확인
print('Text파일을 입력하세요.')
else:
fileView(sys.argv[1], 0)
elif arg_cnt == 3: # python cat.py 3 sample.txt
if sys.argv[1].isdigit(): # 숫자인지 확인
if int(sys.argv[1]) == 0:
print('0 이상의 수를 입력하세요')
exit(0)
print('Text파일을 입력하세요.')
fileView(sys.argv[2], int(sys.argv[1])-1)
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : 지수로 표시 하기 (0) | 2022.11.22 |
---|---|
[파이썬] 문제 : DataFrame에서 결측값 찾기 (0) | 2022.11.22 |
[파이썬] 문제 : 1~100까지의 합 계산 (0) | 2022.11.21 |
[파이썬] 문제 : 난수(random) 정해진 행으로 배열 (0) | 2022.11.21 |
[파이썬] 문제 : pandas 문자열 바꾸기 (0) | 2022.11.21 |
댓글