Python 3.0 中使用"input" , Python 2.0 中使用"raw_input"
Python 3.5:
#!C:\Program Files\Python35/bin
# -*- conding:utf-8 -*-
# author: Frank
user_input = input("please input your name:") #input 函数的使用
print("User input Msg:", user_input) # 显示结果
>>>please input your name: Frank
User input Msg: Frank
Python 2.7:
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:24:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> user_input = input("your name:") # For python2.7 , 这是错误的写法
your name:is
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1
is
^
SyntaxError: unexpected EOF while parsing
>>> user_input = raw_input("your name:") # For python 2.7 , raw_input 是正确的.
your name: Frank
>>> print user_input
Frank
在python3.0 中, input 默认接受的都是 string
eg: 下面的代码将出错
# -*- conding:utf-8 -*-
# author: Frank
name = input("please input your name:")
age = input("please input your age:")
job = input("please input your job:") # 这里用了一个变量Msg,多行模式
Msg = '''
Information of user Frank:%s
------------------------
Name : %s
Age : %d
Job :%s
------------End---------
''' %(name,name, age, job)
print(Msg)
结果出错:
please input your name: frank bian
please input your age:34
please input your job:it
Traceback (most recent call last):
File "<encoding error>", line 16, in <module>
TypeError: %d format: a number is required, not str