Python从入门到精通(day03)

Python从入门到精通(day03)_第1张图片

接着学习世界上最美丽的语言,Python,数据类型还有字典和集合没有学,今天我们继续把他们学完。

字典和集合

字典

    我们都知道英汉字典,英汉字典就是根据英文来查找中文意思。

        英文:键(去找值得索引)

        中文:值(最终想要的)

    在Python语言中,字典有两部分组成, 。这里的英文就相当于Python中字典的键,中文就相当      于值

    根据键去找值,键值对是成对出现的

    【注】键是唯一的,值可以重复

    定义:dic1 = {键值对1, 键值对2}

        键值之间使用冒号隔开,键值对使用逗号隔开。例:dic = {'暗夜猎手':'薇恩','荣耀行刑官':'德莱文'}

    获取值

        dic1['键名']    如果键不存在,报错

        dic1.get('键名')  如果键不存在,返回None

        【注】如果键重复,后面的值会覆盖前面的值

        【注】整型的23和字符串的23不是一个键

        【注】浮点的23.0和整型的23是一个键

        【注】不可变的才可以作为键,可变的不能作为键

        【注】任意类型都可以作为值

    修改值

        根据键修改值。字典是可变的

        如果键存在,则是更新值,如果键不存在,则是增加键值对

    字典长度

        len(dic1)  得到键值对的个数

    删除值

        del dic1['高中']    删除一个键值对

        del dic1          删除这个变量

集合(set)

    高中我们就知道,集合具有两个性质:无序性、唯一性

    定义: s1 = {s1, s2, s3}

    【注】元素只能存放不可变类型(前面我们说过字符串和元组是不可变的)

    如何定义空集合?

        s1  = set()

    集合的操作:

        # 求交集

        # print(s1 & s2)

        # 并集

        # print(s1 | s2)

        # 差集

        # print(s1 - s2)

        # print(s2 - s1)

        # 并集减去交集

        print(s1 ^ s2)

数据类型总结:

    1、哪些可以通过下标访问

        字符串、列表、元组

    2、哪些可以切片

        字符串、列表、元组

    3、哪些是可变的、不可变

        可变的:列表、字典

        不可变:字符串、元组

类型转化函数

str()

    可以将整型转化为字符串

    可以将浮点转化为字符串

    也可以转化列表、元组、字典、集合

int()

  【注】通过input输入进来的都是字符串,如果需要整型。要通过int转化一下

  【注】只能转化整型字符串

float()

  【注】可以转化整型或者浮点字符串

bool()

    空列表是False

    空字符串是False

    空字典也是False

    None也是False

    当是整型的时候,非0为真,0为假

list()

    可以将元组、集合转化为列表

    可以将字典中所有键拿出来放到列表中

    可以将字符串里面所有的字符串提取出来存放到列表中

tuple()

    可以将列表、集合转化为元组

    可以将字典中所有键拿出来放到元组中

    可以将字符串里面所有的字符串提取出来存放到元组中

dict()

    lt = [('name', '成龙'), ('age', 60), ('son', '房祖名')]

    dic1 = dict(lt)

set()

    可以将列表、元组转化为集合

    可以将字典中所有键拿出来放到集合中

    可以将字符串里面所有的字符串提取出来存放到集合中

运算符和表达式

运算符:

    就是用来做运算的符号

表达式:

    就是一个式子,由变量、常量、运算符组成的式子 (表达式是有值得)

算术运算符

    +  -  *  /  %  //  **

    / : 两个数做除法运算,得到的是一个浮点

    % : 取余

        一个数对3取余,得到可能为012

        对2取余,可以判断一个数的奇偶性

        对10取余,可以得到个位数

        可以判断两个数能否整除


    // : 取商

    ** : 求几次方

赋值运算符

  =

    将等号右边表达式的值赋给等号左边

    【注】等号左边只能写变量,不能写常量

复合运算符

    +=  -=  *=  /=  %=  //=  **=

    a += 3  ==》  a = a + 3  是一种简写方式

比较运算符

    >  <  >=  <=  ==  !=

    由比较运算符、变量、常量组成的式子叫做关系表达式,关系表达式的值只有两个,一个是真,一个是假

逻辑运算符

    与(and)  或(or)  非(not)

    逻辑表达式的值只有两个:真、假

    逻辑与

        表达式1  and  表达式2      整个表达式

              真                真              真

              真                假              假

              假                真              假

              假                假              假

        一句话概括:只要有一个为假,那么整个表达式就是假

        num > 80 and num < 200

        80 < num < 200

        在Python语言中可以使用第一种,这两种都可以,但是推荐使用第一种,用第二种容易暴露真实水平

    逻辑或

        表达式1  or 表达式2      整个表达式

              真                真              真

              真                假              真

              假                真              真

              假                假              假

        一句话概括:只要有一个为真,那么整个表达式就是真

    逻辑非

        not 表达式      整个表达式的值

                  真              假

                  假              真


成员运算符

    in      not in

    用来判断元素是否在列表、元组、集合、字典中

    如果在,返回True,如果不在,返回False

    如果是字典,判断键是否在字典中

位运算符(只需要了解一下就行了)

  按位与

    0 1 0

    1 1 1

    1 0 0

    0 0 0

  按位或

    0 1 1

    1 1 1

    1 0 1

    0 0 0

    按位异或

    0 1 1

    1 1 0

    1 0 1

    0 0 0

    按位与    &

    按位或    |

    按位异或  ^

    按位取反  ~  涉及到原码、反码、补码

    左移      <<

    右移      >>

运算符的优先级(依次递增)

    Lambda  #运算优先级最低

    逻辑运算符: or

    逻辑运算符: and

    逻辑运算符:not

    成员测试: in, not in

    同一性测试: is, is not

    比较: <,<=,>,>=,!=,==

    按位或: |

    按位异或: ^

    按位与: &

    移位: << ,>>

    加法与减法: + ,-

    乘法、除法与取余: *, / ,%

    正负号: +x,-x

    【注】不用记,以后写的时候注意加小括号就行了

流程控制

程序执行过程是从上到下一句一句执行

学了流程控制之后,程序猿、(程序媛)可以自己控制一坨代码要不要执行

分支结构:if

    第一种结构:

      if 表达式:

                语句块

        【注】里面的语句块要和if缩进四个空格,很严格

  执行流程:

        当程序执行到if语句时,首先判断表达式的值是否为真,如果为真,则执行语句块,如果为假,则不执行语句块


day02《====                                ====》day04

你可能感兴趣的:(Python从入门到精通(day03))