python输入

python输入

python3以后输入也和python2.7不同,输入函数为input()

 

username = input("username");
password = input("password");

print("用户名为",username);
print("密码为",password);

 

说一下密码如何在输入的时候加密,python自己有自己的函数:

import getpass

password = getpass.getpass(input("password:"));

需要引入getpass,为python的基础模块

说明:getpass这个模块在Pycharm开发工具中无法运行,用cmd去运行就可以了

最后说一下格式化输出,这里面就要用到'''.......'''了。

代码示例1:

name = input("name");
age = input("age");
job = input("job");
salary = input("salary");
info = '''
----------- info of '''+ name + ''' -----------
name : ''' + name + '''
age : ''' + age + '''
job : ''' + job + '''
salary : ''' + salary + '''
'''

print(info)

以上代码'''.......'''作用是字符串的连接,这个时候就要保证你所有的输入项必须为字符串类型,input默认输入就是字符串类型。

下面的问题就是,如果age相输入int类型要怎么办,而且这样的字符串连接格式化输出太麻烦?

代码示例2:

name = input("name");
age = int(input("age"));
job = input("job");
salary = input("salary");
infos = '''
----------- info of %s -----------
name : %s
age : %d
job : %s
salary : %s
''' %(name,name,age,job,salary)

print(info)

说明:python提供了类型强制转换的方法直接在要输入的前面加上int就可以吧输入的内容转化为int,其中%s为字符串类型,%d为int类型。

但是这样的写法还是有一个问题就是%(name,name,age,job,salary)里面的内容必须和上面的是对应上的,数量也要相等,这个时候我们可以进一步进行优化。

代码示例3:

name = input("name");
age = int(input("age"));
job = input("job");
salary = input("salary");
info = '''
----------- info of {_name} -----------
name : {_name}
age : {_age}
job : {_job}
salary : {_salary}
''' .format(_name = name , _age = age , _job = job , _salary = salary)

print(info)

通过调用.format方法就可以更加灵活的实现以上的格式化输出,也是我个人推荐使用的方法,有点和java的构造方法像。

还有一中写法,python也是支持下面的写法的

代码示例4:

name = input("name");
age = int(input("age"));
job = input("job");
salary = input("salary");
info = '''
----------- info of {0} -----------
name : {0}
age : {1}
job : {2}
salary : {3}
''' .format(name, age ,job , salary)

print(info)

最后把以上代码的输出内容给大家展示一下:

----------- info of admin -----------
name : admin
age : 20
job : IT
salary : 1000000

这就是格式化输出。

 

posted @ 2017-11-02 15:17  乱迷魂~~  阅读(194)  评论(0编辑  收藏  举报