Python & Ruby

입력과 출력

사용자의 입력을 애플리케이션으로 가져오기

Python

in_str = input("입력해주세요.\n")
print(in_str.upper()+" World!")

ideone.com

Ruby

puts("입력해주세요")
in_str = gets.chomp()
puts(in_str.upcase() + " World!")

 ideone.com

 

로그인 애플리케이션에 입력 기능 추가하기

Python

in_str = input("아이디를 입력해주세요.\n")
real_egoing = "11"
real_k8805 = "ab"
if real_egoing == in_str:
  print("Hello!, egoing")
elif real_k8805 == in_str:
  print("Hello!, k8805")
else:
  print("Who are you?")

ideone.com

Ruby

puts("아이디를 입력해주세요")
input = gets.chomp()
real_egoing = "11"
real_k8805 = "ab"
if real_egoing == input
  puts("Hello!, egoing")
elsif real_k8805 == input
  puts("Hello!, k8805")
else
  puts("Who are you?")
end

ideone.com

참고

github

댓글

댓글 본문
작성자
비밀번호
  1. 심화평
    17-06-18 11:14분 완료! 감사합니다.
  2. kallos2
    구글에서 " miniconda install "검색하고 설치하세요. 설치 및 사용법은 유튜브 내용을 참고하세요~ (Python K-MOOC: Miniconda on Windows )
    대화보기
    • 나만의 부
      2017.04.17 감사합니다~
    • 코딩하고싶당
      앞에있는 부분 삭제하고 넣어도 python cann't find가 뜨는 이유는 무엇을까요??
      진도를 나갈 수가 없네요 ㅠ
    • seeong2
      awesome
    • Philip Oh
      강의와 실습 모두 잼있습니다~
      감사합니다:)
    • 초보
      문제 해결했습니다. 해당 폴더로 이동 후 python 파일명을 치니 실행되네요 ^^
      대화보기
      • 초보
        답변 감사한데, 겹치는 부분 삭제하고 붙여넣기 해도 계속 Python can't open~~ 하면서 파일을 열 수 없다는 메시지가 반복되네요 ㅠㅠ
        대화보기
        • 연습중
          > 앞에 있는 파일 위치와 겹치는 부분은 삭제하고 붙여넣기 하면 될거에요
          대화보기
          • 초보
            Windows 10 사용자인데 .py 파일 위치를 마우스 오른쪽 클릭한 후 cmd에서 python 다음에 붙여서 엔터를 치면 Python can't open~~ 하면서 파일을 열 수 없다는 메시지가 반복되네요 ㅠㅠ (ruby도 동일...)
            한마디로 cmd에서 python하고 ruby 파일을 읽지 못하는 문제 같은데 해결책이 무엇일까요?
          • chabul00
            뭐가 문젤까요??
            대화보기
            • Peter Lee
              안녕하세요 좋은 목소리의 egoing님 강의 잘 듣고 있습니다.
              Atom으로 편집해서 루비에

              ------------------------------------------------------
              puts("아이디를 입력해주세요")
              input = gets.chomp()
              real_egoing = "11"
              real_k8805 = "ab"
              if real_egoing == input
              puts("Hello, egoing")
              elsif real_k8805 == input
              puts("Hello, k8805")
              else
              puts("Who are you?")
              end
              -----------------------------------------------------
              로 코드를 넣었는데 cmd에서는

              line 5
              'if real_egoing == input'
              ^
              Syntax Error : Invalid syntax라네요..


              이고잉님의 루비 코드랑은 느낌표 하나만 없는 코드인데 이렇게 에러가 나눈군요..

              혹시 이 에러의 이유를 아시는 분 도와주실 수 있나요??
              (아마 'input'때문에 일어나는거 같은데 말이죠...?)
            • 현재 atom editor는 STDIN(Standard Input)을 지원 안한다고 하네요.
              파이썬 루비 아무리 해봐도 안되서 찾아봤더니 .. ㅠ
              대안은 hydrogen? 을 쓰라고 하는데
              다운이 느려서 그냥 안해봤습니다... ㅠ
              (https://github.com......511)

              터미널이나 커맨더에서는 실행되니 안된다고 당황하지 마세요~
            • Helena
              버전이 달라서 그렇습니다. 2.7버전에서는 input 대신 raw_input을 사용해야해요
              대화보기
              • 구녹수수
                똑같이 했는데 왜 아톰 실행창에서 계속 모래시계가 뜰까요?? ㅜㅜㅜㅜ
              • 이경민
                여기서 in_str값을 print할 때 upper나 capitalize로 소문자를 대문자화 해도,
                입력(input)값과 실제(id)를 비교할 때는 대소문자 구분 없이 다 인지를 해서
                설사 대문자로 입력하더라도 소문자id와 호환되어 '승인(id확인)'이 되더라구요.

                그런데 대소문자를 구별하여 만약에 소문자인데 대문자를 입력하면
                id승인이 되지 않도록 하려면 어떻게 해야 하나요?
              • 이고잉2
                input() 이라는 함수에서 사용자의 입력을 받으면 저 함수가 문자열로 바뀐다는 말씀인거죠?

                input() -> "문자열"

                그럼 로그인 기능이나 뭐 다른 input() 함수가 쓰이는 프로그램에서는
                input() 함수가 받을 값은 무조건 문자열이어야 겠네요?
              • JustStudy
                고맙습니다
              • 쥬디다무
                python 2에서는 한글을 입력했을 때 이런 메시지가 뜨는데 python3에서는 안뜨고 잘 실행되네요....

                python 2에서는 한글 입력을 위해 코드의 처음 부분에 다음 코드를 넣어야 하구요... python 3와 Ruby는 안 넣어도 되는 것 같습니다.

                # -*- coding: utf-8 -*-
                대화보기
                • 쥬디다무
                  저는 맥을 쓰는데요 저도 같은 오류가 나와서 테스트를 해보니

                  그냥 python 1.py 라고 하면 python2로 실행이 되면서 오류를 뿜네요..

                  이 때는 input을 raw_input으로 바꿔줘야 합니다.

                  그리고 python3 1.py 라고 하면 python3로 실행이 되면서 예제로 올려주신 코드가 정상적으로 동작됩니다.
                  대화보기
                  • 쥬디다무
                    # -*- coding: utf-8 -*-


                    라고 입력해줘야 하네요.....

                    #도 없애면 안되구요...
                    대화보기
                    • " " 안에서는 변수가 적용되지 않습니다
                      print(" 안녕하세요 name 님")
                      이라 하면 그냥
                      안녕하세요 name님
                      으로 뜨는 거죠.

                      name 변수를 적용하려면
                      print("안녕하세요"+name+"님")으로 해야죠.
                      변수 파트 영상 보고 오세요
                      대화보기
                      • name = input("이름: ")

                        print("잠수 시간을 입력해주세요")
                        minutes = input("분: ")
                        seconds = input("초: ")

                        print ("안녕하세요 name 님")
                        print ("잠수 시간은 minutes. second 입니다")

                        이거 학교에서 해본건데 뭐가 잘못된건가요?
                      • 해앵인
                        루비에는 input함수가 없기 때문에 상관없을것같아요~~
                        대화보기
                        • 이웃집토토로
                          실습하시는 분들
                          두 번째 파트 [로그인 애플리케이션에 입력 기능 추가하기] 에서
                          루비 예제 5,7번에서 input들도 in_str이라는 변수명으로 바꿔야 할 것 같습니다 !
                          (선생님께서 함수를 불러오는 예제를 만들었다고 하시더라고요 )

                          puts("아이디를 입력해주세요")
                          in_str = gets.chomp()
                          real_egoing = "11"
                          real_k8805 = "ab"
                          if real_egoing == in_str
                          puts("Hello!, egoing")
                          elsif real_k8805 == in_str
                          puts("Hello!, k8805")
                          else
                          puts("Who are you?")
                          end
                        • khs2744
                          고맙습니다.
                        • 이웃집토토로
                          코드에 한글을 쓰신 게 아닌지 ..
                          파이썬이나 루비 모두 상단에 다음과 같은 코드를 추가해주시면 됩니다 : )

                          # encoding: UTF-8
                          대화보기
                          • 아톰에서 실행하면
                            아톰에서 실행하면 이런 오류가 나네요

                            File "/Users/hioli701/Documents/python_ruby/input_output/1.1.py", line 1
                            SyntaxError: Non-ASCII character '\xec' in file /Users/hioli701/Documents/python_ruby/input_output/1.1.py on line 1, but no encoding declared; see http://www.python.org......tml for details

                            아스키코드가 아니라.. 무슨말일까요 ㅠㅠ
                          • 동동이
                            강의 잘 보고있습니다. 궁금한 것이 있는데요,

                            in_str = input("입력해주세요.") 코드를 해석해보면
                            in_str를 input 함수로 만든 변수로 정의한 것 맞을까요?

                            또, input 함수를 사용한 것은 항상 데이터 타입이 문자열로 나오나요?
                            in_str의 type을 알아봤을 때 <class str>이라고 나오는 과정이 이해가 가지 않아서요.
                            저는 in_str를 임의로 둔 것이라고 생각했는데 그 자체로 string의 성질을 갖나요?
                          • 감사합니다!!!
                          • nadia
                            Song Hyo Jin>
                            저도 궁금했는데 뒷쪽 강의(컨테이너)에 나오네요.
                            .class 인 듯해요.
                            예: puts("입력해주세요".class)
                            결과: String
                            대화보기
                            • 기혁지구
                              잘 보고 있습니다^^
                            • 구묵
                              잘 보고 있습니다!
                            • Song Hyo Jin
                              파이선에서 데이터형식을 보는 방법으로 type() 를 소개해주셨는데,
                              루비에서는 무슨함수로 볼 수 있나요!?
                            • 사랑해요.
                              고맙습니다. ~~
                            • 검사무운
                              잘 봤습니다. 감사합니다.
                            • 흠흐
                              리눅스 지에디터 사용중인데 자꾸 오류가나길래( 파이썬2,3 버젼이 모두설치되있어서 2버젼이 실행되나봅니다. 지에디터에서 3.x버젼으로 실행하는방법이없나요??) 한참 찾다가 , 첫줄에
                              # -*- coding: utf-8 -*- 를 넣고 하면되네요.
                              / 해결했습니다 .두버젼이 모두깔려있어서 2.x 버젼으로 실행되신다면 터미널로 실행하실때 python 말고 python3 이라고 입력하신뒤 파일을 불러오시면 됩니다^^
                            • centos를 사랑하는 사람
                              http://stackoverflow.com......ned 에 나와있습니다

                              버전이 Python 2.x이면 오류가 나는 현상이라는 군요.
                              Python 3.x으로 업그레이드 하시던지, 아니면 raw_input을 쓰시면 됩니다
                              대화보기
                              • taxiwow
                                저도 이런 오류 나는데 어떻게 해결해야하나요?ㅠㅠ
                                대화보기
                                • grapgrap
                                  저는 python 코드를 돌리면 아래와 같은 오류를 뱉습니다 ㅠㅜ

                                  Traceback (most recent call last):
                                  File "python.py", line 2, in <module>
                                  in_str = input("plz input. \n")
                                  File "<string>", line 1, in <module>
                                  NameError: name 'hello' is not defined
                                • 현현
                                  감사합니다 !! ㅎㅎ
                                • Frank
                                  명강의십니다. 고맙습니다. 이고잉님.^^
                                • egoing
                                  입력값을 int()로 감싸주시면 됩니다. 그럼 숫자로 변환되요
                                  대화보기
                                  • 사진쟁이
                                    파이썬에서 input() 함수를 사용하면 숫자를 입력해도 문자열로 뿌려주더군요. 사용자에게 입력 받은 값을 변수에 넣고 변수끼리 사칙연산을 하고 싶은데 어덯게 해야 숫자를 입력 할 수 있을까요?
                                  버전 관리
                                  egoing
                                  현재 버전
                                  선택 버전
                                  graphittie 자세히 보기