python全栈开发* 02 知识点汇总 * 180531

时间:2022-01-08 16:40:42

运算符和编码

一  格式化输出

1  .输入  name ,age , job , hobby.

输出  :   ---------------  info of Mary  ------------------

Name  : Mary

Age   : 18

Job  : Teacher

Hobbie  :sing

----------------------end-------------------------

eg:   name = input ("Name  : ")

age = input ("Age : ")

job = inut ("Job  : ")

hobby = input ("Hobbt  : ")

info = ‘’‘

----------------------------  info of %s --------------  -# 每个%s 就是一个占位符,(name)

Name  : %s   #代表name

Age  : %s  #代表 age

Job  : %s #代表 job

Hobby  : %s   #代表 hobbie

-------------------------------- end ----------------------

'''% (name,name,age,job,hobbie)   #  这行的% 就是把前面的字符串与括号后面的变量关联起来

print(info)

2.  %s   ,   %d

%s  代表字符串占位符;( 任何东西都可以直接转换成字符串,仅限   "  %s  ".)

%d 代表数字占位符.       (只能输入数字,对应的数据必须是   int  类型).

3. 数据类型转换:

int ( str )         #  字符串转换成int

str ( int )         #  int 转换成字符串

4.  "  %%  " 来表示字符串中的 "%".

在字符串中如果使用了 %s 这样的占位符,那么所有的  %  都将变成占位符,所以需要用  " %%"来表示字符串中的  " % "

注意  :如果字符串中没有使用过 %s  ,%d  占位,则不需要  用它来代替.

eg  :  print("我叫 %s,今年22岁了,学习了2%%的Python "% 'Mary')   #   有%占位.

print( "我叫Mary,今年22岁了,功课已经完成100%了")     #     没有占位

二 基本运算符

1. 算术运算   " 加 "  ,"  减"  ,"  乘  "  ,"   除  ", " 取模(取余)[  %  ] ",   "  幂 [  **  ] ", "  整除 [  //  ]  ".

%  取模   返回除法的余数   a=10  ,  b=20 ,  那么  b%a 输出的结果为0;

**   次幂   返回 a 的 b 次幂  a=10 ,    b=20 ,  那么 a**b 为10的20次方;

//    取整除    返回商的整数部分     a=10 ,    b=20 ,   那么 9 // 2 输出结果 4,  9.0 // 2.0 输出结果 4.0 .

2.  比较运算

==     等于      (  比较对象是否相等  );                #     一个 " = "是赋值

!=      不等于   (  比较两个对象是否不相等  );

<>     不等于   (  比较两个对象是否不相等  );

>      大于

<      小于      (  所有运算符返回1表示真==>True,返回0表示假==>False);

>=      大于等于

<=      小于等于

3.   赋值运算       (   设  a = 10, b =20 )

=     简单的赋值运算符        c=a+b   表示将a+b 的运算结果赋值为c;

+=    加法赋值运算符           c+=a     等效于   c=c+a ;

-=     减法赋值运算符           c-=a      等效于   c=c-a ;

*=     乘法赋值运算符           c*=a      等效于  c=c*a ;

/=      除法赋值运算符           c /=a     等效于  c=c / a ;

%=      取膜赋值运算符           c % a    等效于  c=c % a ;

**=      幂赋值运算符              c **= a   等效于  c=c ** a ;

//=      取整除赋值运算符       c //=a     等效于  c=c//a .

4.   逻辑运算

and      布尔  "与"     如果 a 为False,  a and b返回False,否则它返回 " b "的计算值;

or       布尔  "或"     如果 a 为True,  a or b返回True,否则它返回  " b "的计算值;

not      布尔  "非"     如果 a 为True,  not a 返回False,如果 a 为Flase,它返回True.

注意  :

1.   在没有()的情况下not优先级高于 and, and优先级高于or,

即 :优先级关系为  () > not >  and >or . 同一优先级从左往右计算) .

2.   x or y , x 为真 ,值就是真 ,x 为假 ,值是y ;

x and y,x 为真, 值是 y, x 为假, 值是 x ;

3.    not        非假既真,   非真既假 .

三 编码的问题

1.   解释器

Python2解释器用  " ASCII "对内容进行编码;

Python3解释器用   " UTF-8 "对内容进行编码.

2.  编码系统的发展

ASCII  ( 美国标准信息交换代码  )     8 bit      1 byte     扩大使用受到局限;

GBK    ( GBK兼容ASCII )                16 bit      2 byte     仅限中国

eg  :    字母A:0100 0001        #  ASCII

字母A:0000 0000 0100 0001   #  GBK     国标码

Unicode  ( 万国码 )                              32 bit      4 byte      浪费

UTF-8    (可变长度)           英文           8 bit      1 byte

中文         24 bit      3 byte

3.  单位换算

8 bit  =  1 byte

1024 byte  =  1KB

1024 KB   =   1MB

1024 MB   =   1GB

1024 GB   =   1TB

1024 TB   =   1PB

......