Python学习笔记(1)—B站黑马程序员

Python学习笔记(2)—B站黑马程序员

Python学习笔记(3)—B站黑马程序员

文章目录

  • Linux基础
  • Python基础
  • 一、Python介绍
    • 001-Python的起源
    • 002-为什么选择Python?
    • 003-Python 特点
    • 004-Python 的优缺点
  • 二、第一个Python 程序
    • 001-第一个HelloPython程序
    • 002- python 2.x 和 3.x版本介绍
    • 003-执行 Python程序的三种方式
      • 3.1 解释器 python / python3
      • 3.2 交互式运行 python程序
        • 1)交互式运行 python的优缺点
        • 2)退出官方的解释器
        • 3)IPython
      • 3.3 Python 的 IDE —— PyCharm
    • 004-PyCharm的初始设置
  • 三、开始基础学习
    • 001-注释
    • 002-算数运算符
    • 003-程序执行原理
      • (1)计算机中的三大件:
      • (2)程序执行原理
      • (3)程序的作用
    • 004-变量
      • (1)变量的定义
      • (2)变量的类型
        • A. 变量类型演练——个人信息
        • B. 变量的类型
        • C. 不同类型变量之间的计算
        • D. 变量的输入
        • E. 变量的格式化输出(重要)
      • (3)变量的命名
        • A. 标识符
        • B. 关键字
        • C. 变量的命名规则
    • 005-判断 if 语句
      • (1)基本语法
      • (2)else处理条件不满足的情况
      • (3)逻辑运算符
        • A. and
        • B. or
        • C. not
      • (4)if 语句进阶
        • A. elif
        • B. if 语句嵌套
      • (5)综合应用——石头剪刀布
        • 生成随机数
    • 006-运算符
      • (1)算数运算符
      • (2)比较(关系)运算符
      • (3)逻辑运算符
      • (4)赋值运算符
      • (5)运算符的优先级
    • 007-循环
      • (1)程序的三大流程
      • (2)while循环基本语法
      • (3)python中的计数方法
      • (4)break
      • (5)continue
      • (6)while循环嵌套
      • (7)while循环嵌套演练——九九乘法表
        • 字符串中的转义字符(重要)
    • 008-函数
      • (1)函数的基本使用
        • A. 函数的定义
        • B. 函数的调用
          • PyCharm的调试工具
          • 函数的文档注释
      • (2)函数的参数
        • A. 函数参数的使用
        • B. 参数的作用
        • C. 形参和实参
      • (3)函数的返回值
      • (4)函数的嵌套调用
      • (5)使用模块中的函数
        • A. 模块概念
        • B. 第一个模块体验
        • C. 模块名也是一个标识符
        • D. Pyc文件(了解)
    • 009-高级变量类型
      • (1)列表
        • A. 列表的定义
        • B. 列表的常用操作
        • C. 列表的循环遍历
        • D. 列表的应用场景
      • (2)元组
        • A. 元组的定义
        • B. 元组的常用操作
        • C. 元组的循环遍历
        • D. 元组的应用场景
        • E. 元组和列表之间的转换
      • (3)字典
        • A. 字典的定义
        • B. 字典的常用操作
        • C. 字典的循环遍历
        • D. 字典的应用场景
      • (4)字符串
        • A. 字符串的定义
        • B. 字符串的常用方法
        • C. 字符串的切片
      • (5)上面四种数据类型的公共方法
        • A. python内置函数
        • B.切片
        • C.运算符
        • D.完整的 for 循环语法
    • 010-综合应用——名片管理系统
      • (1)框架搭建
      • (2)保存名片数据的结构
      • (3)实现新增名片功能
      • (4)实现显示所有名片功能
      • (5)实现查询功能
      • (6)实现 处理查找到的名片记录
      • (7)在Linux中如何不使用解释器来执行文件
    • 011-变量进阶
      • (1)变量的引用
      • (2)可变和不可变类型
      • (3)局部变量和全局变量
    • 012-函数进阶
      • (1)函数的参数和返回值的作用
      • (2)函数的返回值 进阶
      • (3)函数的参数 进阶
        • A. 不可变和可变的参数
        • B.缺省参数
        • C.多值参数(知道)
      • (4)递归函数

Linux基础

在评论区找到的讲义:

B站的Python课程讲义

Python基础

一、Python介绍

001-Python的起源





002-为什么选择Python?

003-Python 特点

004-Python 的优缺点

二、第一个Python 程序

001-第一个HelloPython程序


我使用的是Cent OS,不是Ubuntu。




使用python2(默认不支持中文):

使用python3(默认支持中文):
我的CentOS没有python3命令要安装

CentOS-python3命令安装

002- python 2.x 和 3.x版本介绍


003-执行 Python程序的三种方式

3.1 解释器 python / python3

3.2 交互式运行 python程序

1)交互式运行 python的优缺点

2)退出官方的解释器


3)IPython

我的centos7里没有ipython和ipython3命令,百度搜了一下安装。

3.3 Python 的 IDE —— PyCharm




004-PyCharm的初始设置

我没有把PyCharm下载到虚拟机上使用,直接下载到了本机。
下载了自动补全插件:TabNine插件Kite插件设置解释器版本:


三、开始基础学习

001-注释

(1)单行注释以#开头,规定:#后空一格再写注释错误写法:

正确写法:



(2)多行注释一对连续的三个引号(单引号,双引号都可以)


002-算数运算符

算数运算符的优先级:

003-程序执行原理

(1)计算机中的三大件:


(2)程序执行原理

python程序的执行原理:


(3)程序的作用



程序用来处理数据,变量用来存储数据

004-变量

(1)变量的定义

变量的定义:
变量名 = 值
每个变量在使用前必须赋值,每个变量赋值之后该变量才会被创建




(2)变量的类型

在python中,定义变量是不需要指定变量的类型的;
在运行的时候,pyrhon解释器会根据赋值语句等号右边的数据,自动推导出变量中保存的数据的数据类型。

A. 变量类型演练——个人信息

B. 变量的类型

可以使用函数 type(变量名) 判断变量的数据类型
在python 2.x 里 分int 和 long
在python 3,x 里只有int

C. 不同类型变量之间的计算


D. 变量的输入




E. 变量的格式化输出(重要)





(3)变量的命名

A. 标识符

B. 关键字


C. 变量的命名规则

python中不建议使用驼峰命名规则

005-判断 if 语句

(1)基本语法

演练:


if语句和下面所有带缩进的代码是一个完整的代码块,都包括在if条件语句内。

如何判断if语句内有哪些代码:点旁边的减号- 加号+


(2)else处理条件不满足的情况

演练:

input 返回str类型,要进行类型转换

(3)逻辑运算符

A. and



B. or



C. not


(4)if 语句进阶

A. elif



B. if 语句嵌套


多行同时缩进:选中多行+Tab
缩进多了,往前退:shift+Tab

(5)综合应用——石头剪刀布

生成随机数


006-运算符

(1)算数运算符

(2)比较(关系)运算符

(3)逻辑运算符

(4)赋值运算符

(5)运算符的优先级

007-循环

(1)程序的三大流程


(2)while循环基本语法


(3)python中的计数方法


养成习惯,计数从0开始

(4)break



(5)continue

(6)while循环嵌套

(7)while循环嵌套演练——九九乘法表



print()函数默认在输出完之后换行
如果不希望换行,添加 end=“”
print(“…”, end=“”)
end=“这里也可以写东西”
单纯的换行可以:print()

print(" * " ,end=“”) —>可以改为—>print(end=" * ") 同样是不换行输出

字符串中的转义字符(重要)


\t 转义字符的功能是可以在不使用表格的情况下在 垂直方向 按列对齐文本

008-函数

(1)函数的基本使用

A. 函数的定义

B. 函数的调用



PyCharm的调试工具

函数的文档注释


函数的文档注释:
写在函数定义的下方第一行,该行开头空4个空格;
然后六个引号,在引号之间写注释;
如果该函数有参数,也要给参数进行注释,在第三个引号后回车,就会出现注释;
在函数调用位置使用快捷键 ctrl+Q 就可以看到函数的注释信息。

比如:

(2)函数的参数

A. 函数参数的使用

B. 参数的作用

C. 形参和实参

(3)函数的返回值


注意:return表示返回,该函数中的后续代码都不会被执行。

(4)函数的嵌套调用




(5)使用模块中的函数

A. 模块概念

B. 第一个模块体验

C. 模块名也是一个标识符

D. Pyc文件(了解)

009-高级变量类型


(1)列表

A. 列表的定义


B. 列表的常用操作





del 关键字:
在日常开发中,从列表中删除数据,使用列表提供的方法,不使用 del



对于某个方法不知道怎么用:可以将鼠标放在该方法上,再按下 Ctrl+Q 就好了



C. 列表的循环遍历



D. 列表的应用场景

(2)元组

A. 元组的定义


元组定义之后,不能对元组进行增删改操作,即元组的元素不能修改。
虽然列表可以存储不同类型的数据,但是一般是在列表中存储相同类型的数据;
元组中可以存储不同类型的数据。

B. 元组的常用操作


C. 元组的循环遍历


一般对于元组进行循环遍历的操作不是很多,因为元组中的数据类型可以不同,无法进行具体的操作。

D. 元组的应用场景


E. 元组和列表之间的转换

(3)字典

A. 字典的定义


B. 字典的常用操作



C. 字典的循环遍历

D. 字典的应用场景



(4)字符串

A. 字符串的定义




B. 字符串的常用方法




空白字符:空格,\t,\r,\n,等看不见的字符









poem_str.strip()返回一个新的字符串,再.center()居中对齐



C. 字符串的切片





(5)上面四种数据类型的公共方法

A. python内置函数


字符串,列表,字典,可以使用max() min()


max()和min()函数对于字典只针对key比较


python 3.x取消了 cmp() 函数 比较两个数
但是可以使用比较运算符比较 数字,字符串,列表,元组,但是两个字典之间无法进行比较。

B.切片


C.运算符

字符串,列表,元组,都可以利用 * 进行重复:


字符串,列表,元组,可以使用 + 进行拼接合并:

列表的extend()方法,append()方法,也可以实现上述效果:但是extend()方法,append()方法,修改的是原列表,而 + 会生成一个新列表。原列表.extend(列表)方法,会将列表的元素追加到原列表尾部;原列表.append(元素/列表)方法:添加元素/列表到原列表,如果参数是列表,会将该列表看作是一个元素添加到原列表中


成员运算符:in,not in,可以作用于 字符串,列表,元组,字典。
但是字典,只能作用于字典的key。

D.完整的 for 循环语法

当for循环结束之后,会执行else下的代码;
当循环体代码中出现break时,else下的代码不会执行。

010-综合应用——名片管理系统


(1)框架搭建








在cards_tools中,写一个函数来实现欢迎界面:再在cards_main中导入cards_tools模块,使用函数。




1.3 在cards_tools模块中再新增另外三个功能的函数的框架

再在cards_main中导入cards_tools模块,使用其中的函数。


(2)保存名片数据的结构

(3)实现新增名片功能

如何同时修改多次出现的一个变量名?
右键变量名—>Refactor—>Rename—>Rname code occurrences

(4)实现显示所有名片功能


(5)实现查询功能


(6)实现 处理查找到的名片记录


如何快速给一个函数添加注释:鼠标放在函数名上,点击小灯泡,
点击 Insert a doucmentation string stub

(7)在Linux中如何不使用解释器来执行文件

一般在命令终端输入命令:python3 文件名
来执行文件
python3 就是解释器也可以不使用解释器执行文件:切换到文件目录,输入 ./文件名
为什么这样也可以?在要执行的文件的第一行加上:   #! python3解释器的路径然后给该文件加上可执行权限就可以使用 ./文件名 的方式 运行这个文件

011-变量进阶

(1)变量的引用



(2)可变和不可变类型

不可变数据类型,在内存中的数据不能被修改;
可变数据类型,可以使用append()等方法,改变内存中的数据,但是该内存的地址不会被修改。
但是使用 = 赋值语句,内存地址是不一样的:如 a = [1,2,3]和 a = [3,2,1]这两个a保存的内存地址是不一样的。

字典的key只能使用不可变数据类型:数字,字符串,元组
不能使用可变数据类型:列表,字典
value可以使用任意类型的数据

hash()函数只接收一个不可变类型的数据作为参数


(3)局部变量和全局变量











012-函数进阶

(1)函数的参数和返回值的作用

(2)函数的返回值 进阶


返回多个结果可以使用元组;如果函数返回的类型是元组,小括号可以省略。

如果函数返回的类型是元组,同时希望单独处理元组中的元素;
可以使用多个变量,一次接收函数的返回结果。



(3)函数的参数 进阶

A. 不可变和可变的参数

无论传递的参数类型是 可变 还是 不可变,在函数内部针对参数使用 赋值语句,不会影响调用函数时传递的实参变量。


如果传递的参数是 可变类型,在函数内部,使用 方法 修改了参数,外部实参同样会改变。


对于列表变量:列表1 = 列表1 + 列表1  --->  正常的赋值  (函数内部的参数变化不会影响函数外部的参数)列表1 += 列表1      ---->  +=  相当于 extend()方法  (函数内部的参数变化会影响函数外部的参数)这两个是不一样的。对于其他类型的变量,列表1 += 列表1  和  列表1 = 列表1 + 列表1  是一样的。  --->  正常的赋值 (函数内部的参数变化不会影响函数外部的参数)

B.缺省参数


gender = True



C.多值参数(知道)



为什么不直接传一个元组?如果直接传一个元组:def sum_numbers(agrs):...print(sum_numbers((1,2,3)))这样更麻烦。



demo(*gl_nums, **gl_dict) 与 demo(1, 2, 3, name="小明", age=18) 输出结果相同

(4)递归函数



Python学习笔记(1)---B站黑马程序员相关推荐

  1. C++学习笔记(B站黑马程序员C++教程)

    C++学习笔记(B站黑马程序员C++教程) 简介 视频链接https://www.bilibili.com/video/BV1kV411U7Ub?spm_id_from=333.999.0.0 建议用 ...

  2. SpringCloud学习笔记,课程源自黑马程序员,笔记持续更新中...

    @SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式: 学习内容 1.服务拆分-服务远程调用: 2.搭建eureka服务: 2.1.eureka服务注册-client 2 ...

  3. CSS 学习笔记总结(借鉴黑马程序员pink老师前端入门)

    1. CSS 简介 CSS 的主要使用场景就是美化网页,布局页面的 1.1 HTML 的局限性 说起 HTML ,他只关注内容的语义.比如 <h1> 表明这是一个大标题,<p> ...

  4. Python学习笔记(3)---B站黑马程序员

    Python学习笔记(1)-B站黑马程序员 Python学习笔记(2)-B站黑马程序员 Python学习笔记(3)-B站黑马程序员 文章目录 五.项目实战--飞机大战 001-Pycharm中安装py ...

  5. Visual Studio 2022版本 B站黑马程序员C++自学分享-第一阶段(主要包括:自己敲的代码、通过注释来备注上自己对代码的理解)

    Visual Studio 2022版本 B站黑马程序员C++自学分享-第一阶段(主要包括:自己敲的代码.通过注释来备注上自己对代码的理解) 前言 一.第一阶段 C++基础语法入门 对C++有初步了解 ...

  6. Visual Studio 2022版本 B站黑马程序员C++自学分享-第三阶段(1)(主要包括:自己敲的代码、通过注释来备注上自己对代码的理解)

    Visual Studio 2022版本 B站黑马程序员C++自学分享-第三阶段(1)(主要包括:自己敲的代码.通过注释来备注上自己对代码的理解) 前言 三.第三阶段 C++提高编程 介绍C++泛型编 ...

  7. B站黑马程序员pink老师讲的JavaScript代码

    B站黑马程序员pink讲课的JavaScript代码(部分代码) <!DOCTYPE html> <html lang="en"> <head> ...

  8. html, css学习笔记,自用(B站黑马程序员pink老师)

    附上教学视频链接黑马程序员pink老师前端入门教程 该博文是自己随手记的上述视频笔记 跳转到css, p61 P18 <div> </div>一行一个,<span> ...

  9. Python学习笔记:第九站 一串连一串

    Python学习笔记 文章目录 Python学习笔记 第九站 一串连一串 1. 字符串的驻留机制 2. 字符串的常用操作 3. 字符串的比较 4. 字符串的切片操作 5. 格式化字符串 6. 字符串的 ...

最新文章

  1. exp导oracle数据库,使用exp/imp 在oracle数据库间导数据
  2. Android Gallery和ImageSwitcher同步自动(滚动)播放图片库
  3. 解释一下Spring支持的几种bean的作用域
  4. 继续分享 5 个实用的 vs 调试技巧
  5. luogu P1578 奶牛浴场
  6. sleep与wait的区别? 以及wait(long timeout)中timeout的含义
  7. Win10 UWP系列:关于错误 0x80073CF9及一个小bug的解决
  8. c语言vs2013下载官方下载,Microsoft Visual C++2013运行库下载
  9. 解决websocket链接失败防火墙规则问题
  10. 高通CSR8675蓝牙音频芯片怎么样?CSR8675处理器参数介绍
  11. 如何使用 Python 将 Nifti 文件转换为 Dicom 系列
  12. oracle pdb与cdb区别,浅谈oracle 12C的新特性-CDB和PDB
  13. FRM 5.1 现代投资组合理论
  14. python显示.arw相机原始数据,并保存为jpg
  15. js中如何判断undefined
  16. excel小技巧(一)统计单元格中3的个数
  17. Report ZD600PSR028_1
  18. 2021 年最值得推荐的 5 门人工智能编程语言
  19. android 时间颜色,android修改状态栏时间和日期颜色.docx
  20. CSS技巧之精灵图/字体图标/画三角/用户页面样式/vertical-align

热门文章

  1. 【安卓开发】简单记账app功能实现开发-期末大作业个人总结
  2. CreateWindow 与CreateWindowEx
  3. mysql状态监听_Mysql数据状态监听探讨(攒人品)_MySQL
  4. jquery实现图片上传
  5. 大学生计算机学习计划2000字,2020学年大学生新学期学习计划2000字
  6. 校园网测试--ettercap使用
  7. 金融风控-- >申请评分卡模型-- >特征工程(特征分箱,WOE编码)
  8. 2019 Google Adsense 申请 两个月内审核通过两个网站复盘
  9. 银联IC卡读卡流程详解--读卡器与卡交互指令
  10. java 7 new feature