Python的输入和输出以及流程控制语句

来源:互联网 时间:1970-01-01

 
1、通过raw_input()函数获取用户输入(可见)
[[email protected] scripts]# cat input.py   
#!/usr/bin/env python
#-*- coding:utf8 -*-
raw_input("请输入用户名:")
[[email protected] scripts]# python input.py   
请输入用户名:alex
[[email protected] scripts]#
 
2、将用户输入的内容复制给某个变量
[[email protected] scripts]# cat input.py 
#!/usr/bin/env python
#-*- coding:utf8 -*-
name=raw_input("请输入用户名:")
print name
[[email protected] scripts]# python input.py 
请输入用户名:alex
alex
[[email protected] scripts]# 
 
3、用户输入不可见(getpass模块)
[[email protected] scripts]# cat input.py         
#!/usr/bin/env python
#-*- coding:utf8 -*-
import getpass
pwd=getpass.getpass(">>>")
print "####################"
print pwd
[[email protected] scripts]# python input.py 
>>>
####################
alex
[[email protected] scripts]# python input.py 
>>>
####################
python
 
4、流程控制
[[email protected] scripts]# cat if01.py 
#!/usr/bin/env python
#-*- coding:utf8 -*-
name = raw_input("请输入用户名:")  #--->输入alex,此时两边都是alex,说明是两边是值在
                        #进行对比,而不是内存中同一个对象
if name == "alex": #--->注意:进行赋值的时候用一个等号(=),如果是进行比较用双等号(==)              #  这里是值和值进行对比,不是内存地址进行对比。        
   print "登录成功"
else:
   print "登录失败"
[[email protected] scripts]# 
 
is和双等于号(==)的区别:
==  指的是两个变量的值相等就以了,不要求是内存里的同一块地址
is  指的是两个变量在内存里必须是同一块地址,而不是说两个值相等就可以了
 
[[email protected] scripts]# cat   if01.py    
#!/usr/bin/env python
#-*- coding:utf8 -*-
name = raw_input("请输入用户名:")
if name == "alex":
   print "登录成功"
else:
   print "登录失败"
################################################
name= raw_input("请输入用户名:")#输入alex
name =raw_input("请输入用户名:")#输入alex
if name == "eric":
   print "普通"
elif name == "tony ":
     print "超级"
elif name == "alex":
     print "超神"
else:
     print "非法"
 
控制脚本示例①:
 
[[email protected] scripts]# cat login01.py    
#!/usr/bin/env python
#-*- coding:utf8 -*-
import getpass
name = raw_input("请输入用户名:")
pwd = getpass.getpass("请输入密码:")
if name == "eric" and pwd == "123":
   print "登录成功!普通,123"
elif name == "tony" and pwd == "123":
   print "登录成功!超级,123"
elif name == "alex" and pwd == "123":
   print "登录成功!超神,123"
else:
     print "登录失败!"
 
将上述脚本进行改写:
[[email protected] scripts]# cat login.py   
#!/usr/bin/env python
#-*- coding:utf8 -*-
import getpass
name = raw_input("请输入用户名:")
pwd = getpass.getpass("请输入密码:")
if name == "alex" or name == "eric" or name == "tony" and pwd == "123":
    print "登录成功!"
    if name == "alex":
         print "超神,123"
    if name == "eric":
         print "普通,123"
    if name == "tony":
         print "超级,123"
else:
     print "非法用户"
     print "登录失败!"
 
将脚本进一步改写:
[[email protected] scripts]# cat login02.py 
#!/usr/bin/env python
#-*- coding:utf8 -*-
import getpass
name = raw_input("请输入用户名:")
pwd = getpass.getpass("请输入密码:")
if pwd == "123":
    if name == "eric":
         print "eric 普通"
    elif name == "tony":
         print "tony 超级"
    elif name == "alex":
         print "alex 超神"
    else:
         print "非法用户"
else:
    print "登录失败!"
 



相关阅读:
Top