Day1:用户交互与格式化输出

一、用户交互

  1.input()方法

  

1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 # Author:Hiuhung Wan
4 
5 username = input("Username:")
6 password = input("Password:")
7 print(username,password)
View Code

  raw_input()   python 2.x 与input()  python 3.x是一样的

  2.密码密文问题

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Hiuhung Wan
import getpass   #导入getpass模块
username = input("username:")
password = getpass.getpass("password:")
print(username,password)

  引入getpass模块

  注:getpass在pycharm中有问题,可以在命令提示行中查看

C:UserswenxhPycharmProjectsS14day1>dir
 驱动器 C 中的卷没有标签。
 卷的序列号是 0008-AAC0

 C:UserswenxhPycharmProjectsS14day1 的目录

2017/10/15  15:55    <DIR>          .
2017/10/15  15:55    <DIR>          ..
2017/10/15  14:04               109 coding.py
2017/09/28  20:53               241 guess.py
2017/09/26  21:42               199 interaction.py
2017/10/15  15:16               667 interaction2.py
2017/10/15  15:55               206 passwd.py
2017/09/28  20:47               294 password.py
2017/10/06  06:56                14 var.py
2017/09/26  21:33               235 var2.py
2017/10/15  14:18               204 var3.py
2017/09/28  22:03               367 while.py
2017/10/06  06:56    <DIR>          __pycache__
              10 个文件          2,536 字节
               3 个目录 21,243,637,760 可用字节

C:UserswenxhPycharmProjectsS14day1>python passwd.py

  

username:Wenxh
password:
Wenxh 123456

  

二、格式化输出

  1.字符串拼接,使用加号“+”(不推荐使用)

  

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 # Author:Hiuhung Wan
 4 name = input("name:")
 5 age = input("age:")
 6 job = input("job:")
 7 salary = input("salary:")
 8 info = '''
 9 --------- info of '''+ name + ''' ----------
10 Name:'''+ name +'''
11 Age:'''+ age + '''
12 Job:'''+ job + '''
13 Salary:'''+salary
14 print(info)
View Code

  2.用$占位符

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 # Author:Hiuhung Wan
 4 name = input("name:")
 5 age = input("age:")
 6 job = input("job:")
 7 salary = input("salary:")
 8 info = '''
 9 --------- info of %s ----------
10 Name:%s
11 Age:%s
12 Job:%s
13 Salary:%s
14 '''%(name,name,age,job,salary)
15 print(info)
View Code

  其中%s的s代表的是string,还有$d,$f

  python中,默认的所有输入当作字符串

  如果age改成$d,需要将用户的输入转格式,如int(),或str()

  3.format方法一

  

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 # Author:Hiuhung Wan
 4 name = input("name:")
 5 age = int(input("age:"))   #integer
 6 #print(type(age),type(str(age)))
 7 job = input("job:")
 8 salary = input("salary:")
 9 info2 = '''
10 --------- info of {_name} ----------
11 Name:{_name}
12 Age:{_age}
13 Job:{_job}
14 Salary:{_salary}
15 '''.format(_name = name , _age = age, _job = job,_salary = salary)
16 print(info2)
View Code

  4.format方法二

  

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 # Author:Hiuhung Wan
 4 name = input("name:")
 5 age = int(input("age:"))   #integer
 6 #print(type(age),type(str(age)))
 7 job = input("job:")
 8 salary = input("salary:")
 9 info3 = '''
10 --------- info of {0} ----------
11 Name:{0}
12 Age:{1}
13 Job:{2}
14 Salary:{3}
15 '''.format(name,age,job,salary)
16 print(info3)
View Code

如果参数多,使用此方法容易弄错

 
原文地址:https://www.cnblogs.com/hiuhungwan/p/7671166.html