一、变量

1、声明变量

name = "ming"
print("my name is",name)

  上述代码声明了一个变量,变量名为:name,变量name的值为“ming”。

2、变量命名规则

  • 变量名只能是字母、数字或者下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 变量区分大小写
  • 以下关键字不能声明为变量名
    • and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,not,or,pass,print,raise,return,try,while,with,yield

3、赋值

示例:

name = "peng"
name2 = name
print("my name is ",name,name2)

name = "ming"
print("what name and name2 is ",name,name2)

执行结果:

 4、注释

单行注释
#
多行注释
'''
print("ming")
'''

二、input函数

函数语法:
input([prompt])
#参数说明
prompt: 提示信息 
  Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
  Python2.x 中 input() 相等于 eval(raw_input(prompt)) ,用来获取控制台的输入。在2.0input()控制台输入的默认是某个变量
  raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。
注意:
  input() 和 raw_input() 这两个函数均能接收 字符串 ,但 raw_input() 直接读取控制台的输入(任何类型的输入它都可以接收)。而对于 input() ,它希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError 。
  除非对 input() 有特别需要,否则一般情况下我们都是推荐使用 raw_input() 来与用户交互。
注意:
  python3 里 input() 默认接收到的是 str 类型。
示例:
name = input("name:")
# raw_input 2.x input 3.x
# input 2.x =
age = int(input("age:")) #integer,强制数据类型,默认用户输入字符串类型
#print(type(age),type(str(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)

info2 = '''
---------info of %s----------
Name:%s
Age:%d
Job:%s
Salary:%s
''' % (name,name,age,job,salary)
print(info2)

info3 = '''
---------info of {0}----------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
'''.format(name,age,job,salary)
print(info3)
输出结果:

 报错:

  用户交互模式下,默认输入都是字符串,Age是数字类型,需强制转换INT类型

三、getpass模块

getpass模块提供了可移植的密码输入,一共包括下面两个函数:
    1. getpass.getpass()
    2. getpass.getuser()

函数语法:

getpass.getpass([prompt[, stream]])

  提示用户输入一段密码,参数 prompt 用于提示用户开始输入,默认为'Password: '。在 Unix 上,该提示符被写入到类文件对象流中。参数 stream 默认为控制终端 (/dev/tty) 或入过前者不可用时为 sys.stderr (该参数在 Windows 上无效)。

  如果无回显输入不可用,getpass() 回退并向流 stream 中输出一个警告消息,从 sys.stdin 中读取并抛出异常 GetPassWarning。
  适用于: Macintosh, Unix, Windows.
*注:
  如果你在 IDLE 中调用getpass(),输入可能会在你启动 IDLE 的终端中而不是在 IDLE 窗口中完成
exception getpass.GetPassWarning

  Python内置异常 UserWarning 的子类,当密码输入可能被回显时抛出。

getpass.getuser()

  返回用户的登录名,适用于:Unix, Windows

  该函数依次检测环境变量 LOGNAME、USER、LNAME 和 USERNAME,返回其中第一个非空的值。如果这些变量都没有被设置,支持 pwd 模块的系统会返回密码数据库中的登录名,否则抛出异常。
  #注,此模块在pycharm中无法使用。

示例:

import getpass
_username = "yaoyuanying"
_password = "m@y1314"
username = input("username:")
password = getpass.getpass("password:")
#password = input("password:")
if _username == username and _password == password:
    print("welcome user {name} login...".format(name=username))
else:
    print("invalid username or password")

输出结果: