一、运算符
1.算数运算符 + - * / % ** //
2**10             2的10次方
4.2 // 2 == 2     只取整数部分,取商的整数部分
py2  4.2 / 2 ==2
py3 4.2 / 2 == 2.1


二、赋值运算
=    简单赋值
+=   加法赋值运算
-=   减法赋值运算
*=   乘法赋值运算
/=   除法赋值运算
%=   余数赋值运算
**=  幂赋值运算
//=  取整除赋值运算

三、逻辑运算符
and or not(布尔中的是非)

四、成员运算符
in                                       返回值是True 或者 False
not in                                   返回值是True 或者 False
li = ["x","r","j"]
ret = "x" in li
print(ret)
i = "x" not in li
print(i)


五、格式化输出:

格式化字符串时,Python使用一个字符串作为模板。模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式。

Python用一个tuple将多个值传递给模板,每个值对应一个格式符。

格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型,如下:

%s    字符串 (采用str()的显示)

%r    字符串 (采用repr()的显示)

%c    单个字符

%b    二进制整数

%d    十进制整数

%i    十进制整数

%o    八进制整数

%x    十六进制整数

%e    指数 (基底写为e)

%E    指数 (基底写为E)

%f    浮点数

%F    浮点数,与上相同

%g    指数(e)或浮点数 (根据显示长度)

%G    指数(E)或浮点数 (根据显示长度)

 

%%    字符"%"

(1)
name = input("请输入你的名字=")
age = input("请输入你的年龄=")
score = input("请输入你的得分=")
a = "我叫%s,我的年纪%d分,我的得分%d分" %(name,int(age),int(score))
print(a)

(2)
name1 = input("请输入你的名字=")
age1 = input("请输入你的年龄=")
score1 = input("请输入你的得分=")
b = "我叫%(name)s,我的年纪%(age)s岁,我的得分%(score)s分"\
    %{"name":name1,"age":age1,"score":score1}
print(b)

(3)
name1 = input("请输入你的名字=")
age1 = input("请输入你的年龄=")
score1 = input("请输入你的得分=")
dic = {"name": name1,"age": age1, "score":score1}

c = "我叫%(name)s,我的年纪%(age)s岁,我的得分%(score)s分"\
    %dic
print(c)

(4) %% 是表示 百分号
name1 = input("请输入你的名字=")
age1 = input("请输入你的年龄=")
score1 = input("请输入你的得分=")
d = "我叫%(name)s,我的年纪%(age)s岁,我学习进度2%%" %{"name":name1,"age":age1}
print(d)

六、优先级
(1)前后都是比较的条件
原则:() >  not > and  >  or
print(not 2 > 1 and 2 < 3 or 2 > 4)

(2) x or y  if x 为 True.则值是x  else:值是y
ps : str --->int     int(str)字符串必须有数字组成
      int --->str     str(int)
      int --->bool    非0 -- True
                       0--- False
假的有(0,None," ", [ ], {})
print(2 > 1 or 1 and 3 < 2)

8.
(1)战争时期:
 发电报,发的是高低电频,实际上是01010101
今    0000 0001
晚    0000 0101
嗨    0000 0111
去呀  0000 1001

00000001 00000101 00000111 00001001

计算机:
储存文件,或者是传输文件,实际上是010101010
计算机创建初期,美国,二进制

密码本(对照表):
ascii
00000001
01000001 01000010 01000011   ABC

    因为全球语言很多,ascii不足以存储这么多对应关系,创建了一个超级密码本:万国码unicode
    8 位 == 1个字节.
    hello h一个字符,e一个字符,he就不是一个字符.
    中国:中是一个字符,国是一个字符.
    unicode :
        创建之初,16位,2个字节,表示一个字符.
            英文:  a b c  六个字节   一个英文2个字节
            中文   中国   四个字节  一个中文用2个字节
        改成 32位,4个字节,表示一个字符.
            a  01000001 01000010 01000011 00000001
            b  01000001 01000010 01100011 00000001
            中 01001001 01000010 01100011 00000001
            浪费资源.
    对Unicode进行升级:  utf-8
    utf-8 用最少用8位数,去表示一个字符.
        英文:           8位,1个字节表示.
        欧洲文字:       16位,两个字节表示一个字符.
        中文,亚洲文字:   24位,三个字节表示.
    utf-16 用最少用16位数.

    gbk:
        国标,只能中国人自己用, 一个中文用16位,两个字节表示.

    单位转化:
    8位bit  8bit == 1bytes
    1024bytes == 1kB
    1024KB == 1MB
    1024MB == 1GB
    1024GB == 1TB