반응형
사용자 입력을 가져오는 중
다음을 실행합니다.
import csv
import sys
reader = csv.reader(open(sys.argv[0], "rb"))
for row in reader:
print row
그리고 저는 이에 대한 답을 얻었습니다.
['import csv']
['import sys']
['reader = csv.reader(open(sys.argv[0]', ' "rb"))']
['for row in reader:']
[' print row']
>>>
를 위해sys.argv[0]
파일 이름을 입력하라는 메시지를 표시하고 싶습니다.
파일 이름을 입력하라는 메시지를 표시하려면 어떻게 해야 합니까?
기능을 사용하여 사용자(2.x)로부터 입력을 가져옵니다.
print "Enter a file name:",
filename = raw_input()
아니면 그냥:
filename = raw_input('Enter a file name: ')
또는 Python 3.x의 경우:
filename = input('Enter a file name: ')
python 3.x에서는input()
대신에raw_input()
sys.argv[0]
첫 번째 인수가 아니라 현재 실행 중인 파이썬 프로그램의 파일 이름입니다.당신이 원하는 것 같습니다.sys.argv[1]
위의 답변을 조금 더 재사용 가능한 것으로 보완하기 위해 입력이 유효하지 않은 것으로 간주될 경우 사용자에게 계속 메시지를 표시하는 이 방법을 고안했습니다.
try:
input = raw_input
except NameError:
pass
def prompt(message, errormessage, isvalid):
"""Prompt for input given a message and return that value after verifying the input.
Keyword arguments:
message -- the message to display when asking the user for the value
errormessage -- the message to display when the value fails validation
isvalid -- a function that returns True if the value given by the user is valid
"""
res = None
while res is None:
res = input(str(message)+': ')
if not isvalid(res):
print str(errormessage)
res = None
return res
유효성 검사 기능과 함께 다음과 같이 사용할 수 있습니다.
import re
import os.path
api_key = prompt(
message = "Enter the API key to use for uploading",
errormessage= "A valid API key must be provided. This key can be found in your user profile",
isvalid = lambda v : re.search(r"(([^-])+-){4}[^-]+", v))
filename = prompt(
message = "Enter the path of the file to upload",
errormessage= "The file path you provided does not exist",
isvalid = lambda v : os.path.isfile(v))
dataset_name = prompt(
message = "Enter the name of the dataset you want to create",
errormessage= "The dataset must be named",
isvalid = lambda v : len(v) > 0)
다음과 같은 간단한 방법을 사용하여 원하는 항목에 대한 Arguments로 대화식으로 사용자 데이터를 가져옵니다.
버전: 파이썬 3.X
name = input('Enter Your Name: ')
print('Hello ', name)
언급URL : https://stackoverflow.com/questions/3345202/getting-user-input
반응형
'IT' 카테고리의 다른 글
날짜/시간 개체의 분 단위 반올림 방법 (0) | 2023.09.05 |
---|---|
JQuery를 사용하여 이벤트를 발생시킨 요소의 클래스 가져오기 (0) | 2023.08.31 |
MySQL "::1" 호스트 이름은 무엇을 의미합니까? (0) | 2023.08.31 |
변경 시 어떻게 구현합니까?변경 시 어떻게 구현합니까?jQuery와 함께?jQuery와 함께? (0) | 2023.08.31 |
전체 HTML 문서에 전역 글꼴을 적용하는 방법 (0) | 2023.08.31 |