Python入门

python 入门

一.jupyter 用法

  1. 新增,向下添加行:鼠标点击jupyter空格前面不松手,再点击 a 键
  2. 由命令行转换为文本模式:鼠标点击jupyter空格不松手,再点击 m 键
  3. shift+回车:运行命令并且在命令行下面产生空行
    ctrl+回车 :运行命令但是不会产生新的空行
  4. 命令行前的 [] 中如果是*表示正在运行
    -

二.计算机的五大部件

  1. 输入设备 键盘、鼠标

  2. 输出设备 显示屏

  3. 存储器 内存

  4. 运算器 其中运算器中包含寄存器,寄存器是用来处理数据的

  5. 控制器 控制计算机的各个部件
    运算器和控制器都在CPU内,同时CPU还包含着多级缓存

  6. 运行速度之间的比较:
    CPU>存储器>输入输出设备

在这里插入图片描述

python 基础语法

注释 —— # 标注的文本

数字

整数
    1.int
    2.进制 0xa 16进制、0o10 八进制、0b10 二进制
    3.bool,两个值 False、True
浮点数
    1. 1.2、3.1415、-3.4 1.46e等价于1.46*10**9
    2.本质上使用了C语言的 double 类型
复数
    1+2j

字符串

    1.使用 ' " 使用单双引号引用的字符序列
    2. ''' 和 “”“ 单双三引号,可以跨行,可以在其中自由的使用单双引号
    3. r前缀:在字符串前面加r或者R前缀,表示该字符串不做特殊处理
    4. f 前缀:格式化字符串

在这里插入图片描述
在这里插入图片描述

转义序列

    1. \\、\n、\r、\t、\'、\“
    2.前缀r ,把里面所有的特殊字符当普通字符对待

在这里插入图片描述

缩进

    1.未使用C等语言的花括号,而是采用缩进的方式显示层次关系
    2.约定使用四个空格缩进

续行

    1.在行尾使用\
    2.如果使用括号,括号内是一个整体,内部跨行不能用\

标识符

    1.一个名字,用来指代一个值
    2.只能是字母、下划线和数字
    3.只能以字母或下划线开头
    4.不能是python的关键字,例如:def、class就不能作为标识符
    5.python大小写是敏感的
    约定:
    不允许使用中文
    不要使用歧义单词,如class_
    在python中不要随便使用下划线开头的标识符

常量

    1.常量一旦赋值就不能改变值得标识符
    2.python中无法定义常量

字面常量

    1.一个单独的量

变量

    1.赋值后可以改变值的标识符

Python 语言类型

python 是动态语言、强类型语言

静态编译语言

    1.事先声明变量的类型,类型不在改变
    2.编译时检查

动态编译语言

    1.不用事先声明类型,随时可以赋值为其他类型
    2.编程时不知道什么类型,很难推断

强类型语言

    1.不同类型之间操作,必须强制转换为统一类型 
     print('a' + 1)

弱类型语言

    1.不同类型间可以操作,自动隐式转换
    JavaScript 中 console.log(1 + 'a')

进制

 二进制             十进制              十六进制
 0000 0011            3                   3
 0000 0111            7                   7
 0000 1111            15                  F
 0001 1111            31                  1F
 0011 1111            63                  3F
 0111 1111            127                 7F
                      48                  0x30
                      49                  0x31
                      65                  0x41
                      97                  0x61

1.二进制转换为十进制

    128 、64 、32 、16 、8 、4 、2 、1
     1    1    1    1   1   1   1   1
    1.二进制的八位对应的是十进制的这八组数字
    例如:0001 1111 转十进制, 计算过程就是1++2+4+8+16得到的和就可

2.二进制转换为十六进制

    1.十六进制中1-15 的表示方法是
      1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
      举例:0011 1111 转十六进制,十六进制是以四位为一组的,前四个
      字节相加得到的结果是 3 ,后四个字节相加得到15,15在十六进制
      中 用    F 来表示,所以这组数的结果就是3F

3.十进制转二进制

    1.可以用二进制转十进制的办法
    2.可以用十进制的数除 2 ,所得的商和余数从下往上取
      举例:65 转为二进制
    2 | 65          1
     ———— 
    2 | 32        0
      ————
    2 | 16        0
       ————  
     2 | 8        0 
        ————  
      2  | 4      0
         ————   
       2  |  2    0
           ————
             1
    所得的商和余数从下往上一次取得   1000 0001

十六进制转换为二进制

    1.可以按位展开
    举例:0xA6
    A 在十六进制中表示的是 10
    10:  1010    6:  0110   
    组合起来的结果就是    1010 0110

运算符

算术运算符

    1. + - * /  % (取模)  **(几次方) 

位运算符

    1. &  按位与
       |  按位或
       ^  异或
       << 左移
       >> 右移    
    2. 异或————相异出一
       ~  按位取反,包括符号位
       // 整除  32 // 8,相当于32 >> 3
       0010 0000 左移三位相当于去掉三个 0 所得的数值 0000 0100 就得到4
       ~12 得多少?
       12 转为二进制  0000 1100  原码
                  0111 0011  反码
                  1000 1101  补码  最高位是1代表负数   -13

反码、补码、原码,负数表示法

反码

    正数的反码与原码相同,负数的反码符号位不变,其余按位取反

补码

    正数的补码与原码相同,负数的补码符号位不变,其余为按位取反后+1,
    举例:10^9  、 10^-9
      10^9 ,解题思路:把它们的原码异或就行
      10:  0000 1010   原码
      9:  0000 1001   原码
      得到 0000 0011    转为十进制就是 3
     10^-9  
     10:  0000 1010   原码
     -9:  1000 1001   原码
           1000 0011    -3

运算符

比较符
    1. ==  !=  >   <   >=   <=
    2.返回一个bool 值  True  False
        1<'1'  1=='1'
    3.链式比较操作符
          4>2>3   4>mynumber>=1

逻辑运算符

与或非 and or not
短路运算符
       1.and 如果前面的表达式等价为False,后面就没有计算的必要了,
       这个逻辑表达最后一定等价为False
         1 and '2' and 0
         0 and 'abc' and 2
       2.or 如果前面的表达式等价为True,后面就没有计算的要了,这
       逻辑个表达式最后一定等价为True
        1 or False or None

真值表

        对象/常量      值
          ""          假
        "string"      真
          0           假
          >=1         真
          <=-1        真
          ()          假
          []          假
          {}          假
          None        假
    False  等价于布尔值,相当于bool
      1. 空容器
          (1)空集合 set
          (2)空字典 dict
          (3)空列表 list
          (4)空元组 tuple 
      2.空字符串
      3.None 对象
      4.0

运算符

赋值运算符
    1.a=min(3,5)
    2.   +=     -=     *=      /=      %=     //=
    3.x=y=z=10
成员运算符
    in    、   not in
身份运算符
    is    、   not is
运算符优先级由高到低
    算数运算符>位运算符>身份运算符>成员运算符>逻辑运算符
    单目>双目>三目

内存管理

      1.  内存空洞:还没有使用,比如列表需要连续的空间, 空
      2. 洞就是还没有使用的不连续空间
      3. 内存碎片:正在使用    正在使用的不连续空间
      4. 垃圾回收:解决内存碎片化,把标记不用的空间整理出来,
    把内存空洞连接起来, 把内存碎片组合起来,使其成为连续可
    用的空间。
     4.垃圾回收的弊端:内存搬家会造成 Stop Word ,这个期间只
     能进行垃圾回收不能进行其他工作
    5.怎样分辨是不是不用的内存空间?
        根据引用计数,如果某个数据引用计数是0那么可以把它标记

  垃圾回收的弊端:内存搬家会造成 Stop Word ,这个期间只能进行垃圾回收不能进行其他工作
    2.怎样分辨是不是不用的内存空间?
        根据引用计数,如果某个数据引用计数是0那么可以把它标记

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值