(待完善)python学习参考手册

这里写目录标题

第一次发布: 2023.11.8 (待完善 Step1)

观前浅谈:

本篇出发点仅仅是为了应对校内期中测试,比较接近应试技巧.希望在看本篇的同学包括我自己都要记住,学习以及人生没有捷径,更不存在速成,只有不断日积月累学习的进步,谢谢!

诸如此类被引用中的文字,皆为拓展.如果时间紧迫可以直接, 以目录为主要学习内容,其他为次要阅读.

本篇共计()字.看完这一篇大概需要(待补充), 加一些很辛苦的话,求赞求收藏的话,还有学习总收获的话,以及xxxxx. 本篇目的是为了梳理自己做学,以及试图让正在阅读本篇的朋友有所收获,没有浪费您宝贵的(待补充)分钟. 同时期待正在阅读的朋友来提出宝贵的修改建议,以及批评改正(待补充,这里可以参考一下畅销书里面的序言)…
image.png

如何学习编程: 听一遍 写一遍 操作一遍 想一遍 分享一遍 总结归纳
如何学习理论: 学习 复习 教会他人 总结归纳(复习远大于学习)

学习路线 :

  • py基础语法(花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)_哔哩哔哩_bilibili) + 廖雪峰文档 (了解基础语法 打基础)(第一天,第二天)
  • ==> 头歌习题刷起来起来(熟悉语法) + 学习通文档 (明确考点)
  • ==> 想做个小项目双十一秒杀
  • ==>(选学)爬虫 + 数据分析

学习心得笔记:

Step1:

image.png

image.png

在写代码之前, 请千万不要用"复制""粘贴"把代码从页面粘贴到你自己的电脑上.写程序也讲究一个感觉,你需要一个字母一个字母地把代码自己敲进去, 在敲代码的过程中, 初学者经常会敲错代码: 拼写不对,大写不对,混用中英文标点,混用空格和Tab键, 所以,你需要仔细地查找,对照,才能以最快的速度掌握如何写程序.

简单但一问不知怎么的组织语言去回答的小问题:

1.什么是字符串?
这种用单引号或双引号括起来的文本,在程序中叫做字符串
2.SytaxError 代表什么错误?
SytaxError是语法错误.

什么是提示符?

提示符就是输入命令的地方

python解释器是什么?

Python解释器是 解释和执行python代码的工具
image.png
image.png

请正在阅读本文的朋友,安装一下PyCharm以及如何进行科学的省钱:

此处也请朋友 STFW(Search The Friendly Web),下载之后继续往下阅读.

Python中的命令行模式和交互模式的区别是什么?
  1. 是否会自动打印结果

举例: Python的命令行模式进行 100 + 200, 需要再多一行代码 print(“”);打印出来,而 交互模式 100 + 200 自动打印出 300
2. 执行文件时候,是否是执行全部代码
举例: 有一个JiShuGaiBianShiJie.py的文件在命令行模式下会执行里面所有代码. 但再交互模式下, 是输入一行执行一行,不会直接执行全部代码.

Python的交互模式并不是Python正式运行的环境,而是方便调试代码,以及方便初学者学习.

请正在阅读本文的朋友安装一下Visual Studio Code,Visual Studio Code的安装:

下载的原因是让JiShuGaiBianShiJie.py得以保存且可以反复执行**, 因为仅在交互模式下执行之后代码是不会保存的**,只有写在文本中保存之后才能用命令行模式反复执行使用
此处也请朋友您 STFW(Search The Friendly Web),下载之后继续往下阅读.

venv是什么?有什么作用?

venv是python的虚拟环境.
当我们要开发多个应用程序的时候,每个应用可能都需要一套区别于其他应用的运行缓解, 所以venv的作用便是为每一个应用创建一套"隔离"的Python运行环境
image.png

了解Python中的print()语法

print()语法格式
print(*objects, sep=‘’, end=‘\n’, file=sys.stdout)

参数理解:
object 表示一次可以输出多个对象.输出多个对象时候, 需要用 , 分割
sep 用来间隔多个对象, 默认值是 一个空格
end 用来设定以什么结尾. 默认值是换行符\n, 我们也可以换成其他字符串
file 要写入的文件对象

了解Python中的input()语法

image.png
很关键一点,就是input输入的数据类型 都是字符串!!!

了解一下注释:

'#'用来单行注释
image.png

image.png

image.png

image.png

采用编译方式执行的语言称为: 静态语言
采用解释方式执行的语言称为: 脚本语言

image.png

Python中注释分为单行注释, 多行注释以及中文声明注释

image.png

image.png
保留字就是语言自带的一些有特殊意义的单词
保留字严格区分大小写

image.png
标识符就是"名字", 但要注意就是不能随意命名. 名字都用小写, 常量用大写

image.png
image.png

常量大写,就是程序中不进行修改值的变量

Python中的数据类型可以分为:
数值类型(整数类型,浮点数类型,复数类型)

Python3中常见数据类型(七个):
数字
字符串
布尔类型
列表
元组
集合
字典

= 是赋值符号, 不是数学中的等于号

什么是动态语言?什么是静态语言?

这种变量本身类型不固定的语言称之为动态语言, 与之对应的就是静态语言.静态语言在定义变量时必须指定变量类型,如果赋值的类型不匹配, 就会报错.

除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数

Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。

Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)。

ASCII,Unicode和UTF-8之间的关系:

由于计算机是美国人发明的, 因此, 最早只有127个字符被编码到计算机中,其中含有 大小写英文字母,数字和一些符号. 这个编码表被称为 ASCII编码.然后不足以表达中文, 然后中文又有中文的编码,这就导致很容易出现乱码问题, 之后为了统一,出现了Unicode,Unicode解决了乱码问题,如果我们都用英文的时候,反而空间出现浪费,这时候为了节省空间,又把Unicode编码变为了 UTF-8, UTF-8把一个Unicode字符根据不同数字大小编码为1-6字节, 比如会将英文字母编码为1个字节,汉字3个等等.其中ASCII可以看作UTF-8的一部分.

Unicode字符集应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了

list类型和tuple类型:

list:想要获取最后一个元素,除了计算索引位置外,还可以直接用-1做索引, 直接获取最后一个元素
list和tuple都是python内置的有序集合,一个可变,一个不可变.根据需要来选择使用他们.

python有两种循环, for…in while:

for 变量 in 目标变量
while无特殊

break是提前退出循环
continue是跳过本次循环,直接开始下一次循环

和list比较,dict有以下几个特点:
  1. 查找和插入的速度极快, 不会随着key的增加而变慢
  2. 需要占用大量的内存,内存浪费多

而list:

  1. 查找和插入时间随元素的增加而增加
  2. 占用空间小,浪费内存少

所以dict是用空间换时间的一种发放

set和dict的唯一区别:
仅仅在于有没有存储对应的 value, 但是set的原理和dict一样.
replace方法创建了一个新字符串’Abc’并返回

区分list, tuple,dict, set:

list是方括号[], 如L = [1,2,3]
tuple是圆括号(),如t=(1,2,3)
dict是花括号{}, 如d = {‘张三’:1,‘王五’:2,‘赵六’:3} 不可变对象
set也是花括号{},如s={1,2,3}

函数名是什么:

函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个"别名"

Python的函数返回多值其实就是返回一个tuple
当函数有多个参数时候,把变化大的参数放在前面, 变化小的参数放在后面. 变化小的参数就可以作为默认参数.
使用默认参数有什么好处?
使用默认参数的好处就是能降低调用函数的难度

定义默认参数要牢记一点:默认参数必须指向不变对象!

参数组合:

python中参数有五种:
必选参数,默认参数,可变参数,命名关键字参数和关键字参数
同时五种参数的顺序必须是以上顺序

可变参数:

image.png

*nums表示把nums这个list的所有元素作为可变参数传进去。这种写法相当有用,而且很常见。
image.png

关键字参数:

image.png
关键字参数作用是 拓展函数的功能, 可以接收除了必须参数外更多的参数

区分一下python函数参数:

必选参数:
person(a,b)
默认参数:
person(a=1,b=2)
可变参数:
person(*c)
命名关键字:
person(a,b, *, c, d)
关键字参数:
person(**c)

什么是递归函数:

如果一个函数在内部调用自己本身,这个函数就是递归函数

由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。可以试试fact(1000)

尾递归优化的语言可以通过尾递归防止栈溢出。尾递归事实上和循环是等价的,没有循环语句的编程语言只能通过尾递归实现循环

切片(Slice):

切片是用来取出 一个区间中的数据用的
注意:
L[0:3] 是取出 L[0] L[1] L[2]不包括L[3]

迭代(lteration):

用for循环遍历一个 list/tuple,这种遍历称为迭代

列表生成式(List Comprehensions):

生成list用的.
[for x in list(range(1,11))]
输出[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

生成器:

在Python中,这种一边循环一边计算的机制,称为生成器:generator。
要创建一个generator,有很多种方法。第一种方法很简单,只要把一个列表生成式的[]改成(),就创建了一个generator:
(for x in list(range(1,11)))

模块:

说白了就是使用内置的模块,只要安装完毕,这些模块就可以立刻使用
import sys

参考资源(以第一个字的字母进行排序):

廖雪峰文档:第一个Python程序
Web3布道师小钢
小卓的职业生涯引路人拓跋阿秀,江湖人称秀哥
学习通: 电子科技大学中山学院李蓉老师学习文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/164254.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

支持存档的书签服务LinkWarden

什么是 LinkWarden ? Linkwarden 是一个自托管、开源协作书签管理器,用于收集、组织和存档网页。目标是将您在网络上找到的有用网页和文章组织到一个地方,并且由于有用的网页可能会消失(参见链接失效的必然性)&#xf…

基于单片机的甲醛检测器设计

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、设计的主要内容二、系统硬件设计三、软件设计4.1 程序结构流程图原理图 四、结论五、 文章目录 概要 本文将要提…

把wpf的窗体保存为png图片

昨晚在stack overflow刷问题时看到有这个问题,今天早上刚好来尝试学习一下 stack overflow的链接如下: c# - How to render a WPF UserControl to a bitmap without creating a window - Stack Overflow 测试步骤如下: 1 新建.net frame…

【达梦数据库】学习笔记

【达梦数据库】学习笔记 【一】如何使用idea连接达梦数据库【二】idea项目导入本地的达梦数据库驱动jar包(方法一)【三】idea项目把本地的达梦数据库驱动jar包安装到本地仓库(方法二) 【一】如何使用idea连接达梦数据库 &#xf…

深入理解强化学习——多臂赌博机:乐观初始值

分类目录:《深入理解强化学习》总目录 目前为止我们讨论的所有方法都在一定程度上依赖于初始动作值 Q 1 ( a ) Q_1(a) Q1​(a)的选择。从统计学角度来说,这些方法(由于初始估计值)是有偏的。对于采样平均法来说,当所有…

蓝桥杯双周赛算法心得——串门(双链表数组+双dfs)

大家好,我是晴天学长,树和dfs的结合,其邻接表的存图方法也很重要。需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪 1) .串门 2) .算法思路 串门(怎么存图很关键&#xf…

springboot本地启动多个模块报错:Address already in use: JVM_Bind

目录 背景解决方法 背景 环境: jdk1.8 idea 2019.2.4idea本地启动多个模块联调时,提示报错: 错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 9090; nested exception is: java.net.BindException: Addre…

Flink SQL TopN语句详解

TopN 定义(⽀持 Batch\Streaming): TopN 对应离线数仓的 row_number(),使⽤ row_number() 对某⼀个分组的数据进⾏排序。 应⽤场景: 根据 某个排序 条件,计算 某个分组 下的排⾏榜数据。 SQL 语法标准&am…

kubernetes-调度

目录 一、k8s调度简介 二、影响kubernetes调度的因素 1、nodename 2、nodeselector 3、亲和与反亲和 (1)nodeaffinity (2)podaffinity(亲和) (3)podantiaffinity&#xff0…

怎样在iOS手机上进行自动化测试

Airtest支持iOS自动化测试,在Mac上为iOS手机部署iOS-Tagent之后,就可以使用AirtestIDE连接设备,像连接安卓设备一样,实时投影、控制手机。iOS测试不仅限于真机测试,iOS模拟器也可以进行。Mac端上部署完成后还可以提供给…

大数据毕业设计选题推荐-营业厅营业效能监控平台-Hadoop-Spark-Hive

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

最新 vie-vite框架下 jtopo安装使用

官方地址 官方源码 安装下载 1.官方好像都没有给git地址,尝试npm安装报错 2.找到1.0.5之前的版本npm i jtopo2,安装成功后使用报错,应该是版本冲突了 1.本地引入, 点击官方源码下载,需要jtopo_npm文件 2.引入到本…