一、用户交互
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)
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)
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)
其中%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)
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)
如果参数多,使用此方法容易弄错