에서 구 만들기는 어떻게 사용하여 다음 문구를 만들 것입니다 :파이썬 -시 감안시
이 숫자는 문구 의지에서 좌표, 행과 열 수 있습니다. (1,1), (1,20), (3,60)
내 질문은 누구에게이 작업을 수행하는 방법에 대한 아이디어가 있습니까?
에서 구 만들기는 어떻게 사용하여 다음 문구를 만들 것입니다 :파이썬 -시 감안시
이 숫자는 문구 의지에서 좌표, 행과 열 수 있습니다. (1,1), (1,20), (3,60)
내 질문은 누구에게이 작업을 수행하는 방법에 대한 아이디어가 있습니까?
좋아 I 해요 추측하여 문제에서 촬영을 거 :
당신의시는 그것이 당신이 쓰는 단어의 무리와 라인 문자의 끝에서 끝을 (갖도록 텍스트 파일하자 그냥 타격에 의해 입력). 이 파일은 다음과 같이 보일 것입니다 :
This is a poem
with many lines
much much lines.
이제이 파일을 저장하고 쉽게 열 수 있도록 동일한 폴더에 파이썬 스크립트를 작성합니다.
스크립트는 이제 두 가지 작업을 수행합니다. 먼저시를 사용하여 파일을 열고 문자열 목록으로 저장합니다. 즉, 배열의 각 요소를시 (첫 번째 좌표 점)의 줄로 간주하고 각 요소는 단어 (두 번째 요소)로 구성됩니다.
그래서 코드에서 스크립트는 다음과 같습니다
lines = []
with open('poem.txt', 'r') as poem:
for raw_line in poem:
line = raw_line.strip()
lines.append(line.split(" "))
우리는 우리의 선 배열을 인쇄 할 경우 우리가 얻을 :
[['This', 'is', 'a', 'poem'], ['wtih', 'many', 'lines'], ['much', 'much', 'lines.']]
그래서 완료, 기능을 당신의 구문의 배열에 걸릴 수있다 좌표는 다음과 같이 라인 배열의 단어를 가져옵니다.
def phrases(coords, poem):
'''Takes in an array of tuples with x and y coordinates where x is
the line number and y is the word on that line. Also takes in the
poem array'''
phrase = ""
for coordinate in coords:
line = coordinate[0]
word = coordinate[1]
phrase += poem[line][word] + ", "
# this is messy cause there's a lagging comma space at the end but
# figure that out later.
return phrase[:len(phrase)-2]
This, lines, lines.
는 요약 :
print phrases([(0,0), (1,2), (2,2)], poem)
는 문구를 얻을 것입니다 : 범위에 우리시와 세 개의 좌표를 산출 할 것이다 라인의리스트로시를 저장하고 각 라인 단어로 구성되어있다. 좌표계는 (행, 단어)입니다. 희망이 당신이 염두에 두었던 것입니다.
정보를 더 제공 할 수 있습니까? 이 좌표는 무엇입니까? 단어? 문장? 편지? 당신은 좌표에 의해 주어진 각 요소에서 당신의 문구를 만드시겠습니까? 그렇다면, 좌표는 당신의 시인 문자열을 참조합니까? – ZekeDroid
일부 코드를 아직 사용해 보지 않으셨습니까? – Totem