Python基础知识,,Python2与Py


Python2与Python3的区别: (这里只列举自己总结的几点)

Python2:

  源码不标准

  混乱

  重复代码过多

  默认使用的编码方式是ASCII码 # 解决对应编码问题 在首行增加 #-*-encoding:utf-8-*-

  继承顺序: 深度优先 #mro方法只在新势类中存在;super只在Python3中存在

Python3:

  统一标准,去除重复代码

  继承顺序:广度优先 Python2.7新式类和经典类共存 新式类要继承object


编码

ascii:包括:字母,数字,特殊字符(一个字节 8 位)。

Unicode:万国码 (两个字节 16 位) 升级为 (四个字节 32位)。

UTF-8: Unicode升级版 最少使用(一个字节 8位) 字母,数字,特殊符号 一个字节, 欧洲 使用(两个字节 16位) 中文 使用(三个字节 24 位)。

gbk:中文使用两个字节,英文使用一个字节。


Python中命名规范

  变量:变量就是将一些运算的中间结果暂存到内存中,以便于后续代码调用

  要求:

    1.必须由数字,字符,下划线任意组合,且不能以数字开头

    2.不能是Python中的关键字

    Python中的关键字:

    ["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.变量具有可描述性

    4.不能是中文

  注释:方便自己方便他人理解代码的注释,程序不运行

    单行注释: #

    多行注释: ‘‘‘被注释内容‘‘‘ 或者 """被注释内容"""


基础数据类型初始

  type() # 用来检测数据类型

  int(数字型):例如1,2,3,4,5.....

    数字型可以进行数字运算 例如: "+","-","*","/",**(乘方),%(取余).....

    str >>> int: int(str) str必须是数字组合而成的

    int >>> str: str(int)

  str(字符串): Python中凡是用引号引起来的都是字符串

    字符串的操作:

      str + str: 字符串的拼接

      str * int: 相乘重复输出

  bool(布尔值): bool型只有True或者False

    bool>>>int: Ture=1 False=0

    int>>>bool: 除0,None,"",以外都为True

用户交互: input()

  

#定义一个变量 ii = input("提示输入")#1.等待输入#2.将你输入的内容赋值给了前面的变量#3.input出来的数据类型全部都是str(str是字符串)


if判断语句

if<条件判断1>:    <执行1>elif<条件判断2>:    <执行2>elif<条件判断3>:    <执行3>else:    <执行4>


while循环

while 条件:  # 只要条件满足就不断循环,如果条件不满足则跳出循环;if 条件: break  # 满足if条件执行break跳出循环;if 条件: continue  #  满足if条件则跳过本次循环进入下一轮循环;while 条件: else  #break跳出循环则不执行else 否则不满足while条件则执行else内容


格式化输出

"%"的妙用

%; # 格式化字符串%d;  # 格式化整数%f;  # 格式化浮点数,可以指定小数点后的精度%s;  # 格式化字符串 %x;  # 格式化无符号十六进制数%X;  # 格式化无符号十六进制数(大写)%c;  # 格式化字符及其ASCII码%u;  # 格式化无符号整形%o;  # 格式化无符号八进制数%e;  # 用科学计数法格式化浮点数%E;  # 作用同%e,用科学计数法格式化浮点数%g;  # %f和%e的简写%G;  # %f和%E的简写%p;  # 用十六进制数格式化变量的地址Demo:    i = "帅哥"   print("我是一个%s"%i) 输出:    "我是一个帅哥"

"format"的妙用

str.format()# 1.按照顺序 {}{}{}  str.format("1","2","3")# 2.按照索引 {0}{1}{2}{0} str.format("0","1","2")# 3.按照变量 {s1}{s2}{s3}{s1} str.format(s1=变量1,s2=变量2,s3=变量3)

Ps: Python2.6新加入的format语法支持;Python新版本推荐使用format

***"%"与"format"的区别

  %有局限性 例如传一个元祖就会报TypeError 像此类格式化的需求我们需要写成‘%s‘%(type,)

  format新特性 Python3.6加入f-strings 更方便 例如:

    f‘Str{变量}Str{变量}‘ 可直接替换完成


转义符

  Python转义字符:

    r"" ; 字符串内容全部真实含义(转义)

    \(在行尾);续行符

    \; 转义符

    \a; 响铃

    \b;退格

    \e;转义

    \000; 空

    \n; 换行

    \v; 纵向制表符

    \t; 横向制表符

    \r; 回车

    \f; 换页

    \oyy; 八进制数,yy代表的字符,例如: \o12代表换行

    \xyy; 十六进制数,yy代表的字符,例如: \x0a代表换行

    \other; 其他的字符以普通格式输出


运算符

算数运算:

运算符   描述                       实例

+     加-两个对象相加                  a + b

-     减-得到复数或是一个数减去另一个数         a - b

*     乘-两个数相乘或是返回一个被重复若干次的字符串   a * b

/     除-x除以y                     b / a

%    取模-返回除法的余数               b %a

**    幂-返回x的y次幂                  a ** b

//    取整除-返回商的整数部分              a // b

比较运算:

运算符           描述

==             等于-比较对象是否相等

!=              不等于-比较两个对象是否不相等

<>             不等于-比较两个对象是否不相等

>              大于-返回x是否大于y

<              小于-返回x是否小于y

>=             大于等于-返回x是否大于等于y

<=             小于等于-返回x是否小于等于y

赋值运算:

运算符     描述             实例

=       简单的赋值运算符       c=a+b

+=      加法赋值运算符 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

逻辑运算:

运算符       描述

and        布尔"与"-如果x为True, x and y 返回y值

or        布尔"或"-如果x为True, x or y 返回x值

not        布尔"非"-如果x为true,返还x为False

逻辑运算优先级

()>>>not>>>and>>>or

补充: 位运算

"&" 与运算

demo: 5&2 = 0

0101

& 0010

= 0000

"|" 或运算

demo:5|2 = 7

0101

| 0010

= 0111

"~" 非运算取反

"<<" 左移运算符 x << 1

# 相当于x*2

">>" 右移运算符 x >> 1

# 相当于x//2

"^" 异或运算符

11>0 00>0 01>1 10>1

demo:5^3 = 6

0101

^ 0011

= 0110

Python基础知识

评论关闭