一、与用户交互

# input是输入,外界输入进计算机
# python2 与 python3 的区别
  python3
    input = ("请您输入: ")
	input里所有的都是"str"类型
  python2
	raw_input 实际上就等于python3的 input
    input 则需要输入的时候表明数据类型,例如:
       input = ("请您输入: ")
    	在输入的时候字符串就得"Ame"或者列表[1, 2, 3]
# print则就是计算机输出到外界的
# print输入格式则为
	print = ("ok,ok")

二、格式化输入

# python2 与 python3 的不同输入
# python2
1、 %s是代表字符串 %d是代表整数 %f是代表浮点型(小数)
    name = "小明"
    hobby = "唱 跳 rap 篮球"
    age = 60
    time_years = 2.5
    print("班上的时常达%0.1f年的练习生%s, 他的爱好就是%s,"
          "并且在他%d岁的时候, 编出了鸡你太美舞蹈" % (time_years, name, hobby, age))
# %f在小数上问题,如需要保留2位小数,则只需要%0.2f即可
# %d在数字保留上面,如 %02d  age = "2"  则会输出成02

2、 format
2.1
    res = "班上的时常达{}年的练习生{}, 他的爱好就是{}," \
          "并且在他{}岁的时候, 编出了鸡你太美舞蹈".format(2.5, "小明", "唱 跳 rap 篮球", 60)
    print(res)
    班上的时常达2.5年的练习生小明, 他的爱好就是唱 跳 rap 篮球,并且在他60岁的时候, 编出了鸡你太美舞蹈
    

    res = "班上的时常达{0}{0}年的练习生{1}{1}, 他的爱好就是{2}{2}," \
    	  "并且在他{3}{3}岁的时候, 编出了鸡你太美舞蹈".format(2.5, "小明", "唱 跳 rap 篮球", 60)
    print(res)
    班上的时常达2.52.5年的练习生小明小明, 他的爱好就是唱 跳 rap 篮球唱 跳 rap 篮球,并且在他6060岁的时候, 编出了鸡你太美舞蹈

2.2 
	res = "班上的时常达{year}年的练习生{name}, 他的爱好就是{hobby},".format(name="小明", year=2.5, hobby="篮球")
	print(res)
    班上的时常达2.5年的练习生小明, 他的爱好就是篮球,
    
# python3    
1、f.string
	name = "Ame"
	age = 18
	print(f"我的名字叫{name},年龄是{age}")
    我的名字叫Ame,年龄是18
# 只能在python3中使用,虽然很简洁简单

三、基本运算符

3.1 赋值运算符

变量名 赋值符号 变量值
name = "Ame"

3.2 算数运算符

+  -  *  /    //     %     **
加 减 乘 除 除取整数 除取余  幂
# 字符串只可以相加和相乘
#相加
    name = "Ame"
    hobby = "basketball"
    name + hobby = "Amebasketball"
#相乘
    name = "ame"
    name * 3 = "ameameame"
# 数字型是都可以用算术运算符的,但是python对算数精确度不高,所以需要第三方模块

3.3 增量赋值

# 没有用增量赋值
    i = 1
    i = i + 1
    print(i)
# 增量赋值
    i = 1
    i += 1	
    print(1)
# 以上效果其实是一样的
# 增量赋值有 += -= *= /=

3.4 链式赋值

x = 10
    y = x
    z = x
# 可以优化
    x = y = z = 10

3.5 交叉赋值(面试题)

# 使x y互相交换值
# 造第三个变量当中间量
    x = 10
    y = 20
    z = x
    x = y
    y = z
    print(x, y, z)
# 交叉赋值
	x, y = y, x
    print = (x, y)

3.6 解压赋值

name_list = ['jason','egon','tony','kevin']
     name1 = name_list[0]
     name2 = name_list[1]
     name3 = name_list[2]
     name4 = name_list[3]
     print(name1,name2,name3,name4)
     # 解压赋值
     name1, name2, name3, name4 = name_list  # 按照位置一一对应赋值
     print(name1, name2, name3, name4)

    # name1, name2, name3 = name_list  # 少了不行
    # name1, name2, name3, name4, name5 = name_list  										# 多了不行

    # 可以打破个数必须相等的情况
    l = [11, 22, 33, 44, 55, 66, 77, 88, 99]
    a, b, *_, c = l
    print(a, b, _, c)
    a, b, *_ = l
    print(a, b, _)

3.7 逻辑运算符

与 and  连接多个条件 条件必须都成立
或 or   连接多个条件 成立其一即可
非 not  取反
# 当这些混合着用 实际是有优先级的,但是可以用括号去打破这些优先级

3.8 比较运算符

>     <     <=       >=    ==    !=
大于 小于 小于等于 大于等于 等于 不等于

3.9 身份运算符

is 比较的则是双方地址
== 比较的则是双方值

3.10 成员运算

in     
not in