美文网首页
Python基础-day03

Python基础-day03

作者: 陈small末 | 来源:发表于2019-01-11 08:55 被阅读0次

    list

    ​ 运算符

    ​ 控制语句

    ​ range方法

    ​ 包 import

    ​ random

    ​ while for

    运算符

    ​ 算术运算符

    ​ 关系运算符

    ​ 逻辑运算符

    ​ 赋值运算符

    ​ 成员运算符

    ​ 身份运算符

    ​ 位运算符

    算术运算符

        + : a + b
        -: a-b
        *: a * b
        //: a // b a整除b 
        # 整除
            print(a//b)
        # 取余
            print(a%b)
        # 除
            print(a/b)
        #幂运算:**
            print(2**4) 打印2的四次幂
    注意:python2中 a/b 是整除
    

    关系运算符

    > < >= <= != ==(比较的值)
    在python2里有<>表示不等于 在python3不生效了
    

    逻辑运算符

    ​ and 与 :只有都是真 结果才为真 只要有假 结果就为假

    ​ or 或运算:只有真 则结果就为真

    ​ not 取反:真变假 假变真

    ​ not > and > or

    三目运算:

    ​ 形式一:条件判断 and 表达式1 or 表达式2

    ​ 形式二:表达式1 if 判断条件 else 表达式2

    ​ 取值原理:

    ​ 当条件判断为真的时候取表达式1

    ​ 为假取表达式2

    ​ 取值逻辑:

    ​ 与(and):

    ​ 如果and 左侧条件不成立,停止向后去取值 直到遇到 or

    ​ 2==3 and 4 or 5 取到的结果是5

    ​ 或(or)

    ​ 如果or左侧成立 那直接取值True

                2==2 or 2 and 8  取到的结果是True
    

    赋值运算符

    ​ =

    ​ eg: a = 3 解释:将数值3 赋值给了a

    ​ +=

    ​ eg: a+=b 相当于 a = a + b 解释:+=符号左侧的变量将参与运算 然后运算结果再赋值给自己,以下运算符同理

    ​ -=

    ​ %=

    ​ /=

    ​ *=

    ​ //=

    成员运算符

    ​ 字典 列表 集合 元组 字符串

    ​ 如果是字典 判断的是 在不在字典的keys里 二不去判断在不在values里

    ​ eg:a = [1,2,3,4,5] 想知道1在不在数组里 6在不在数组里

    ​ in

        my_list = [1,45,6]
        print(1 in my_list) 结果是True
        print(2 in my_list)       False
    

    ​ not in 不在

        print(2 not in my_list) 结果是True
    

    伪代码:不是真正的代码 而是对代码逻辑的一个说明 整理

    ​ 数组是[1,2,3,4,5]

    ​ 看1 是不是 in 这个数组

    ​ 1 in [1,2,3,4,5]

    身份运算符

    比较值 还要比较内存地址 当两者都相同才返回真

    ​ id()内置函数 括号内是一个变量 得到的结果是地址

    ​ is

    ​ not is

    位运算符【了解】权限的时候 会用到

    ​ 针对于二进制(以8位为例) 补码

    ​ 6 & 7 都是真 则真 有假则假

    ​ 110

    ​ 111


    ​ 110

    ​ 6|7 结果是7: 有真则真

    ​ 110

    ​ 111


    ​ 111---》7

    ​ 6^7 得到的结果是1:不同为真 相同为假

    ​ 110

    ​ 111


    ​ 001 ---》1

    ​ ~6

    ​ 0000 0110 ---》1111 1001---》1111 1000-》1000 0111--》-7

    ​ 位移:

    >>表示右移 
        6>>1 6是十进制数 1表示位数 对应的二进制数向右移动 最低位舍弃 最高位补0
    
        6-->110 >> 00011
    << 表示左移
        6<<1 6是十进制数 1表示位数 对应的二进制数向右移动 最低位补0
        6-->110 << 1100 ----》12
    

    控制语句

    ​ 程序默认从上到下执行:顺序执行

    ​ 判断分支:if else elif

    ​ if 后只能跟一个或0个else

    ​ 对条件的判断》成功和失败

    ​ 例子:找工作:

    ​ if 工资大于15k:

    ​ 考虑一下

    ​ 考虑好多事情

    ​ else:

    ​ 按着最近的那个if条件不成立的时候 执行下面的拜拜

    ​ 拜拜-》出门左转

    if 工资大于15k:
    
                考虑一下
    
            elif 能学到东西:
    
                #上边的条件不成立的时候,接下来继续判断,如果本次判断成立,执行下面的代码
    
                也去
    
            else:
    
                再找
    
    

    在if 写的是我们判断条件,if 之后可以加N多个elif elif 也要加判断条件

    elif 是跟在if后面的 然后可以出现多个,后面跟判断条件

    if语句的嵌套使用

    找对象

    if sex == "女":

    ​ if age>17 and age<25:

    ​ print("靠近她")

    ​ if money > 10:

    ​ print("展开攻势")

    ​ else:

    ​ print("我养你呀")

    else:

    ​ print("不搞基")

    pass 占位 他没有含义和功能

    关于缩进:

    ​ 通过缩进来区分代码块

    缩进的方式:1 用四个空格

    ​ 2 用两个空格

    ​ 3 一个tab键

    ​ 注意:一旦确定缩进方式 就不能变

    range 范围的意思

    ​ 在python 帮我们生成一个序列 也是python的内置函数

    1 range(数字)

    ​ 通过list() 强制转换 我们会看到一个从0开始到你括号里写的数字-1

    2 range(开始值, 结束值)

    ​ 会得到一个[开始值,,,结束值-1) 序列

    res1 = range(2, 10)
    print(list(res1))
    

    3 range(开始值, 结束值, 步数)

    res2 = range(0, 20, 3)  0是起始值 20结束值(不会被取到) 2是间隔步数
    print(list(res2))
    
    

    4 降序

    # 降序
    res3 = range(10, 0, -2)
    print(list(res3))
    

    ​ python有丰富的库,帮我们完成 我们自己写的不能快速完成的事情,提高代码的复用性

    ​ keyword 包

    包:是一个文件或者目录

    分类:

    ​ 系统的 keyword

    ​ 自己定义的

    ​ 别人的:第三方包

    使用:

    ​ 第一步:导包 import 文件名/目录名

    ​ 第二步:通过点 来调用包里面的常量, 函数,类

    拓展说明

    ​ 或者导入使用:from 包名 import 函数名 类名 常量

    ​ from 包名 import * : 将包名里面对应所有内容导入过来

    ​ 产生的一个问题:当我们from 包名 import * 导入多个包的时候 会产生重名的问题

    ​ 因此:我们就用什么 导入什么

    from 包名 import 函数名 类名 常量 与 import的区别

    ​ 购物车 里面有吃的

    ​ from 车 import 乐视薯片

    ​ import 车

    ​ 使用的时候 车.可乐

    导包规范

    ​ from ... import xxx 在文件最开始 而且 引用系统的在前,自定义在后

    ​ import xxx 在from xx import xx 之后引用系统的在前,自定义在后

    一般来说 导包都是在文件的开头来完成【约定

    自定义的包不要和系统的冲突

    random

    ​ 随机

    ​ random是一个系统自带的包 帮我们生成随机数或字符

    ​ 先导入

    choice方法

    ​ 功能:在一个非空序列 给我们随机出来一个元素

    res = random.choice("jskdfs")
    print(res)
    res1 = random.choice([1,2,3,4,5,6,7,78,8,44,3])
    print(res1)
    

    randint

    randint 帮我们随机出来一个整数 他能渠取到我们等号两侧的值
    
    
    #randint 帮我们随机出来一个整数 他能渠取到我们等号两侧的值
    res2 = random.randint(1, 2)
    print(res2)
    

    randrange

    res3 = random.randrange(1)
    
    res4 = random.randrange(8, 10) 8是随机的起始值 10是结束值 
    print(res4)
    
    res5 = random.randrange(1, 15, 3) 1是随机的起始值 15是结束值 3是我们的步骤
    print(res5)
    

    random 帮我们随机出一个0到1之间的小数

    res8 = random.random()
    print(res8)
    

    循环语句

    ​ 重复的做一个操作

    ​ 道歉:

    ​ print("我错了")

    ​ print("我错了")

    ​ print("我错了")

    ​ print("我错了")

    ​ 女票说:你给我用python输出一万句 “我错了” 我就原谅你

    while循环需要的东西:

    ​ 1 起始值 i = 0

    ​ 2 判断当前的这个i 是不是满足我们循环的条件

    ​ 是:

    ​ 继续执行我们的代码

    改变i的数值

    ​ 不是:

    ​ 循环结束

    while循环

    起始变量

    while 判断条件:

    ​ 你的操作逻辑

    ​ 判断条件所用变量 要修该其值(目的是未了能循环结束)

    打印十以内的偶数
    i = 0
    while i <= 10:
        # (i+1)%2==0
        if (i % 2) == 0:
            print(i, "是偶数")
        else:
            print(i, "不是偶数")
        i += 1
    

    while循环嵌套

    
    

    注意

    ​ 1 要有循环结束标记的变化 ,如果不变 就产生了死循环

    相关文章

      网友评论

          本文标题:Python基础-day03

          本文链接:https://www.haomeiwen.com/subject/jfhvrqtx.html