Python基础复习【第一弹】【黑马】
本篇是观看b站黑马视频所做的笔记第一弹,为1-98节。
b站-黑马Python
# 1.Hello World
print("Hello World")# 2.字面量 在代码中,被写下来固定的值# 3.字符串
print("python")# 4.单行注释 # 多行注释""" """# 5.type()获得类型
str_type = type("python")
print(str_type) #<class 'str'># 6.类型转换
tmp1 = 1
print(int(tmp1))
print(float(tmp1))
print(str(tmp1))
print(int(11.56))#丢失精度# 7.标识符,英文,中文,下划线,数字,内容限定,大小写敏感,不可使用关键字# 8.Python大小写敏感# 9.加减乘除+-*/ 取余% 取整除// 指数**# 10.'s' "s" """s"""都是可以定义字符串 对于""""""有等号就是字符串# 11.转义字符 \
print("\"str")# 12.字符串拼接 +# 13.占位符 %s %d %f %5.2f 代表宽度为5小数点后面为2
var1 = "s1"
var2 = "s2"
message = "两个变量为%s和%s" % (var1,var2)
print(message)# 14.快速占位
var3 = 'sss'
var4 = '333'
print(f"不会做精度控制快速占位{var3}和{var4}")# 15.表达式的格式化
print("1*2的结果是:%d" % (1*2))
print(f"1*2的结果是:{1*2}")# 16.输入
#name = input("请输入信息") 默认都是字符串# 17.布尔类型bool
print(f"3大于5吗{3 > 5}")# 18.比较运算符 == != > < >= <=# 19.if语句 if(): // if(): else: // if(): elif: else:# 20.循环语句 while i < 0:# 21.随机数
import random
num = random.randint(1,10)#产生1~10中的一个数# 22.print不换行 print()空就是一个换行
print('Hello', end = '')# 23.字表符 \t 进行对齐# 24.输出九九乘法表
print("")
#第一种方法
i = 1
while i <= 9:j = 1while j <= i:print(f"\t{j}*{i}={j*i}", end = '')j += 1i += 1print("")
print("")
#第二种方法
for i in range(9):for j in range(i+1):print("\t%d*%d=%d" % (j+1,i+1,(i+1)*(j+1)), end ='')print("")# 25.for循环
name = 'ForwardSummer'
for i in name:print(f"{i},",end = '')
# 26.range() 左开右闭 可加步进# 27.continue跳过本次循环 break跳过所有循环# 28.len()函数# 29.函数定义,函数参数,返回值, 返回None
print()
def DefineF(x):return "这是一个函数"
print(DefineF(1))# 30.函数注释,在函数体中使用多行注释来进行函数注释
def DefineY(x):""":param x::return:"""return "这是一个函数"# 31 列表基础 长度可变 可修改
new_list1 = ['1','2']
new_list2 = []
new_list3 = [[1,2,3],[4,5,6]]#嵌套
new_list4 = ['1',1,True]
print(new_list1[-1])
print(new_list1.index('1'))
new_list1.insert(1,'3')
new_list1.append('4')
new_list1.extend(new_list4)
del new_list1[1]#删除
new_list1.pop(2)#删除可以去除元素,可接收
new_list1.remove('1')#从后向前删除第一个元素
new_list3.clear()#清空列表
new_list4.count('1')#统计元素的数量
print(len(new_list1))#长度统计# 32 列表遍历
#while循环
#for循环# 33. 元组 一旦定义不可修改 但内部可变
t1 = ('1',1,True)
t2 = ()
t3 = tuple()
t4 = ('hello',)#注意定义一个元素的逗号
t5 = ((1,2),(3,4))
#取元素 index(),count(),len()和list一样# 34. 字符串 像列表一样 下标取值 不可修改 count len和list一样
str1 = "dhi 145"
print(str1.index("1"))
str2 = str1.replace("d","1")
print(str1)
print(str2)
str1_list = str1.split(" ")
str3 = str1.strip()#不传入参数就是前后空格
str4 = str1.strip("d")#传入参数回去除本身及其子串# 35. 序列和切片 列表 元组 字符串都是序列 左闭右开 可取步长,步长为负数开始和结束也要反转
new_list5 = [1,2,3,4]
new_list6 = new_list5[:4]# 36.列表有序可重复可添加 集合不可重复无序 列表[]集合{}字符串""元组()
new_set = {1,2,3}
new_set1 = set()#集合的定义不能用{}被字典占用 定义重复key,新的把老的覆盖
new_set.add(3)
new_set.remove(3)
print(new_set)
new_set.pop()#随机取出一个值
#new_set.clear()
new_set2 = new_set1.difference(new_set1)#取差集 两个集合都不会变
new_set1.difference_update(new_set2)#取差集 谁调用 谁修改 集合1去掉和集合2相同的元素
new_set3 = new_set1.union(new_list2)#两个集合不变 得到一个新的集合
len(new_set1)#求集合的数量# 37.集合的遍历
for el in new_set3:print(el)# 38.字典 用{}定义,元素是一个一个键值对
new_dict1 = {}
new_dict2 = dict()
new_dict3 = {"小明":1,"小华":2}
score_1 = new_dict3["小明"]
print(score_1)
new_dict4 = {"小梦":{"语文":30,"数学":59},"小鸣":{"语文":49,"数学":100}}
print(new_dict4["小梦"]["语文"])# 39.字典常用操作
new_dict3["小明"] = 9 #更新
new_dict3["小流"] = 5 #新增
new_dict3.pop("小明") #删除
new_dict3.clear() #清空
keys = new_dict4.keys() #获取全部的key
for key in keys: #不支持while循环print(f"字典的key是:{key}")print("字典的key是:%s" % new_dict4[key])
for key in new_dict4:print(f"字典的key是:{key}")print("字典的key是:%s" % new_dict4[key])
new_dict4len = len(new_dict4)# 40.容器的通用操作
len(new_set1) #长度的通用操作
print(max(new_set)) #最大最小函数,max min
#list(容器) #truple(容器) #set(容器) #str(容器)
#字典转列表 会抛弃所有的value#排序
sorted(new_list3) #sorted排序后会变成列表
sorted(new_list2, reverse = True) #反向排序# 41.字符串的比较 按照ASCLL码同位依次比较# 42.函数的返回值 有多个return 只返回第一个 返回多个值用逗号隔开
# 函数的多返回值
def test_return_muti():return 1, 2
# 43.函数的多种返回形式
# 位置参数 关键字参数 缺省参数 不定长参数
def test_guanjianzi(name, age, gender):print(f"您的名字是:{name},年龄是:{age},性别是:{gender}")
test_guanjianzi(name = "小明",age = 11,gender = "男")
# 位置参数和关键字参数可以混用
test_guanjianzi("小明",11,gender = "男")
def test_qusheng(name, age=1):#带默认值必须放在最后print(f"{name},age")
def test_budingchang(*args):#位置不定长print(args)#默认存的是元组
def test_bdcguanjianzi(**kwargs):#关键字的不定长必须传入key-value形式print(kwargs)
test_bdcguanjianzi(name = "小明", age = 11)
# 44.函数做作为参数
def test_hanshu(compute):#计算逻辑的传递而非数据的传递result = compute(1,2)print(result)
def compute(a,b):return a + b
# 45.lambda函匿名函数没有名称 只能临时使用一次 写一行
test_hanshu(lambda x, y: x+y)# 46.文件的编码 UTF-8# 47.文件的操作 打开读取和关闭
# with open 会自动关闭文件 建议用这个
with open("D:/PyCharm/Test/FileIO/TestFile.txt",'r',encoding='UTF-8') as f:for line in f:print(line)
# 统计a的个数
# open(name,mode,encoding) 文件的名字/只读 写入 追加/UTF-8
f = open("D:/PyCharm/Test/FileIO/TestFile.txt",'r',encoding='UTF-8')
print(type(f))
# f.read(num) num限制读取字节长度 在程序中多次调用read会从上次读取末尾开始
# lines = f.readlines() #read的方法大类共享一个指针 readlines读取全部的行
# print(lines)
# readline一次读取一行
# 用for循环读取操作
# for line in f:
# print(line)
print(f.read().count('a'))
# 文件的关闭 不关闭会造成一直占用
f.close()
# 去除反斜杠n 可以替换 可以用line.strip() strip()去除开头结尾空格和换行符
# f.write()写入 f.flush()刷新后写入文件 不存在创建文件
f1 = open("D:/PyCharm/Test/FileIO/TestFileWrite.txt",'w',encoding='UTF-8')
f1.write("Hello World")
f1.flush()
f1.close()
f2 = open("D:/PyCharm/Test/FileIO/TestFileAppend.txt",'a',encoding='UTF-8')
f2.write("Hello World")
f2.close()# 48.Python异常
# 48.1 捕获异常 try: 可能发生的异常 except:出现异常执行的代码
# 48.2 捕获指定异常 try: except NameError as e: 执行的语句 只捕获名字不存的异常
# 48.3 捕获多个异常 try: except (NameError,ZeroDivisionError) as e: 执行的语句 捕获名字不存和除0异常
# 48.4 捕获所有异常 try: except Exception as e: 执行的语句 捕获所有的异常
# 48.5 捕获所有异常 try: except :出现异常 else:没有出现异常 finally:无论无何都会执行 比如文件的关闭
# 48.6 异常的传递 在函数的调用时会一层一层向上传 传递几次 出现几次 不用去底层出现异常的地方去捕获 在上层的调用中捕获就可以# 49.模块 Module是一个python文件 以.py结尾 模块能定义函数 类和变量
# 语法 [from 模块名] import [模块|类|变量|函数|*] as 别名
import time as t
print("开始")
t.sleep(5)#睡眠5秒钟
print("结束")
# 自定义模块 直接import 直接调用里面的函数 同名函数会覆盖
# 导入模块会直接调用模块中已经调用的函数 可以用 if __name__ == '__main__': 就不会被调用了
# 在被调用Module中加入__all__=['函数名a']就只能用'函数名a' 其他不能用了
# python模块相当于一个文件 python包相当于一个文件夹 _init_.py有这个相当于一个文件夹
# import my_package.my_module1
# my_package.my_module1.module1_print()
from my_package.my_module1 import module1_print
# 可以进行更细粒度的函数的导入 module也可以
module1_print()
# 在_init_.py文件中可以控制import*时的要插入的mudule 但是只能控制* 手动一个个插入是可以的
# __all__ = [my_module1]
相关文章:
Python基础复习【第一弹】【黑马】
本篇是观看b站黑马视频所做的笔记第一弹,为1-98节。 b站-黑马Python # 1.Hello World print("Hello World")# 2.字面量 在代码中,被写下来固定的值# 3.字符串 print("python")# 4.单行注释 # 多行注释""" "&q…...

【Word】公式编辑器中连字符/减号等显示偏长/过长
问题 当公式编辑器中出现连字符的时候,连字符显示偏长,如下图所示: 方法 在连字符的前后加上双引号后即可解决连字符显示偏长的问题。 最终效果对比如下: 结语 Word的公式编辑器中,双引号内部的内容被当做普通…...
架构设计系列4:如何设计高性能架构
在架构设计系列1:什么是架构设计中,我们讲了架构设计的主要目的,是为了解决软件系统复杂度带来的问题,今天我们来聊聊软件系统复杂度的来源之一高性能。 一、什么是高性能架构? 要搞清楚什么是高性能架构,…...

1392. 最长快乐前缀
链接: 1392. 最长快乐前缀 题解: class Solution { public:string longestPrefix(string s) {if (s.size() < 0) {return "";}int MOD 1e9 7;// 构建26的n次方,预处理std::vector<long> pow26(s.size());pow26[0] 1…...

【C++设计模式之备忘录模式:行为型】分析及示例
简介 备忘录模式(Memento Pattern)是一种行为型设计模式,它用于保存和恢复对象的状态。备忘录模式通过将对象的状态封装成一个备忘录(Memento),并将备忘录保存在一个管理者(Caretakerÿ…...

数据结构与算法(四):哈希表
参考引用 Hello 算法 Github:hello-algo 1. 哈希表 1.1 哈希表概述 哈希表(hash table),又称散列表,其通过建立键 key 与值 value 之间的映射,实现高效的元素查询 具体而言,向哈希表输入一个键…...

FFmpeg 命令:从入门到精通 | ffplay 播放控制选项
FFmpeg 命令:从入门到精通 | ffplay 播放控制选项 FFmpeg 命令:从入门到精通 | ffplay 播放控制选项选项表格图片 FFmpeg 命令:从入门到精通 | ffplay 播放控制选项 选项表格 项目说明Q,Esc退出播放F,鼠标左键双击全…...
代码随想录day59
647. 回文子串 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成&#…...

【小工具-生成合并文件】使用python实现2个excel文件根据主键合并生成csv文件
1 小工具说明 1.1 功能说明 一般来说,我们会先有一个老的文件,这个文件内容是定制好相关列的表格,作为每天的报告。 当下一天来的时候,需要根据新的报表文件和昨天的报表文件做一个合并,合并的时候就会出现有些事新增…...

【论文阅读】An Evaluation of Concurrency Control with One Thousand Cores
An Evaluation of Concurrency Control with One Thousand Cores Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores ABSTRACT 随着多核处理器的发展,一个芯片可能有几十乃至上百个core。在数百个线程并行运行的情况下&…...

网页版”高德地图“如何设置默认城市?
问题: 每次打开网页版高德地图时默认定位的都是“北京”,想设置起始点为目前本人所在城市,烦恼的是高德地图默认的初始位置是北京。 解决: 目前网页版高德地图暂不支持设置起始点,打开默认都是北京,只能将…...

小谈设计模式(8)—代理模式
小谈设计模式(8)—代理模式 专栏介绍专栏地址专栏介绍 代理模式代理模式角色分析抽象主题(Subject)真实主题(Real Subject)代理(Proxy) 应用场景远程代理虚拟代理安全代理智能引用代…...
queryWrapper的使用教程
大于、等于、小于 eq 等于 例:queryWrapper.eq("属性","lkm") ——> 属性 lkm ne 不等于 例:queryWrapper.ne("属性","lkm") ——> 属性<> lkm gt 大于 例:queryWrapper.gt("属性…...
数组模拟双链表
文章目录 QuestionIdeasCode Question 实现一个双链表,双链表初始为空,支持 5 种操作: 在最左侧插入一个数; 在最右侧插入一个数; 将第 k 个插入的数删除; 在第 k 个插入的数左侧插入一个数; …...

鸡群优化(CSO)算法(含MATLAB代码)
先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年…...

3. 安装lombok maven镜像设置
安装lombok & maven镜像设置 一、maven镜像设置 Maven:负责进行项目管理、依赖工具管理的 软件。 快捷解决方案: 1.方法一 直接配置系统默认的文件 各个人因为登录的用户名不同,所以目录名不同。 2.方法二 自定义本地仓库的位置 完成之后重新打…...

详谈Spring
作者:爱塔居 专栏:JavaEE 目录 一、Spring是什么? 1.1 Spring框架的一些核心特点: 二、IoC(控制反转)是什么? 2.1 实现手段 2.2 依赖注入(DI)的实现原理 2.3 优点 三、AO…...

PyTorch入门之【AlexNet】
参考文献:https://www.bilibili.com/video/BV1DP411C7Bw/?spm_id_from333.999.0.0&vd_source98d31d5c9db8c0021988f2c2c25a9620 AlexNet 是一个经典的卷积神经网络模型,用于图像分类任务。 目录 大纲dataloadermodeltraintest 大纲 各个文件的作用&…...

(六)正点原子STM32MP135移植——内核移植
目录 一、概述 二、编译官方代码 三、移植 四、编译 一、概述 前面已经移植好了TF-A、optee、u-boot,在u-boot能正常跑起来的情况下,现在来移植内核。 二、编译官方代码 进入kernel目录 2.1 解压源码、打补丁 /* 解压源码 */ tar xf linux-6.1.28.…...
自媒体工作内容管理助手
内容助手 访问地址:editor.yunwow.cn 背景介绍 最近在学习流量运营, 流量运营的第一站是内容创作, 我试过不少原创内容,都是跟生活相关的例如:录一段联琴的视频、录一段秋天的风景、写一段生活感悟、发一段小宠物的生…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...

七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...

【Veristand】Veristand环境安装教程-Linux RT / Windows
首先声明,此教程是针对Simulink编译模型并导入Veristand中编写的,同时需要注意的是老用户编译可能用的是Veristand Model Framework,那个是历史版本,且NI不会再维护,新版本编译支持为VeriStand Model Generation Suppo…...