【31天蓝桥杯冲刺!】蓝桥杯相关的 Python 知识点总结(1)输入输出数据的相关操作(1)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

a = “Hello World!”
b = “WORLD!!”

1、访问下标

print("下标0= ",a[0])
print("下标3= ",a[3])

2、切片

print("a[4:8]= ",a[4:8])

3、len(a)

print("len(a) = ", len(a))

4、连接字符串

print("a + b = ", a + b)

5、存在/不存在

if ‘Hello’ in a:
print(“Yes”)

6、强制转换字符串

c = 5
print(str©)


* 输出结果:



下标0= H
下标3= l
a[4:8]= o Wo
len(a) = 12
a + b = Hello World!WORLD!!
Yes
5


#### 2.2 字符串常用方法


##### 判断篇:


* s.isalnum() 检查字符串中的字符是否都是字母或数
* s.isalpha() 检查字符串中的所有字符是否都是字母
* s.isdigit() 检查字符串是否只包含数字
* s.isupper() 判断字符串是否全为大写
* s.islower() 判断字符串是否全为小写
* s.isspace() 检查字符串中是否只包含空白
* s.isnumeric() 检查字符串中的所有字符是否都是数字字符



标题化判断

print(“Hello World”.istitle())
print(“Hello world”.istitle())
print(‘-’*10)

大小写判断

print(“HELLO”.isupper())
print(“HELLO”.islower())
print(‘-’*10)

数字字母判断

print(“Hello5201314”.isalpha())
print(“Hello5201314”.isalnum())
print(“Hello”.isalpha())
print(‘-’*10)

空白判断

print(" “.isspace())
print(”\t\n\t".isspace())
print(“”.isspace())


##### 输出结果:



True
False

True
False

False
True
True

True
True
False

进程已结束,退出代码 0


##### 转换篇(加粗的为重点掌握):


* title() : “标题化”字符串
* **lower()**: 转换成小写
* **upper()**: 转换成大写
* swapcase():字符串中大写转换为小写,小写转换为大写
* **strip([chars])**:截掉字符串左边的空格或指定字符chars
* rstrip([chars]):截掉字符串右边的空格或指定字符chars
* strip([chars]):调用lstrip([chars])和 rstrip([chars])
* **replace(old, new[,max])**:将字符串中的 old 替换成 new ,如果 max 指定,则替换不超过 max 次



标题化

s = “hello world”
t = s.title()
print("s = ", s)
print(“t = “, t)
print(”-”*10)

转换成小写

s = “HELLO WORLD!”
t = s.upper()
print("s = ", s)
print(“t = “, t)
print(”-”*10)

转换成大写

s = “hello world!”
t = s.lower()
print("s = ", s)
print(“t = “, t)
print(”-”*10)

大小写互换

s = “hello world!”
t = s.title().swapcase()
print("s = ", s)
print(“t = “, t)
print(”-”*10)

删除字符串左边的空格

s = " hello world!"
t = s.lstrip()
print("s = ", s)
print(“t = “, t)
print(”-”*10)

删除字符串左边的多个字符:e,h,空格

s = " hello world!"
t = s.lstrip("eh ")
print("s = ", s)
print(“t = “, t)
print(”-”*10)

替换字符

s = “abcd abcd abcd abcd”
t = s.replace(“a”, “A”)
z = s.replace(‘a’, ‘A’, 2)
print("s = ", s)
print("t = ", t)
print(“z = “, z)
print(”-”*10)


* 输出结果:



s = hello world
t = Hello World

s = HELLO WORLD!
t = HELLO WORLD!

s = hello world!
t = hello world!

s = hello world!
t = hELLO wORLD!

s = hello world!
t = hello world!

s = hello world!
t = llo world!

s = abcd abcd abcd abcd
t = Abcd Abcd Abcd Abcd
z = Abcd Abcd abcd abcd

进程已结束,退出代码 0


##### 查找篇(加粗的为常用):


* **count(str, beg = 0, end = len(string))** :求 str 在字符串中出现次数,如果指定查找范围,则在[beg,end]中查找
* **find(str, beg = 0, end = len(string))** :判断 str 是否在字符串中,如果指定查找范围则在[beg,end]中查找,如果找到的起始下标,不存在返回-1
* rfind(str, beg = 0, end = len(string)):从右往左查找
* index(str, beg = 0, end = len(string)):与 find 相同,只是如果 str 不存在,则抛出异常
* rindex(str,beg = 0, end = len(string)):从右往左查找
* startswith(substr, beg = 0, end = len(string)):判断是否以 substr 开头
* endswith(suffix, beg = 0, end = len(string)):判断是否以 suffix 结尾


##### 2.3 修改字符串的方法:


* 字符串转换成list(由于 python中 字符串本身是不可修改的,转换成list可以进行修改):



直接转换成list:列表的每个元素都是长度为 1 的字符串

s = “Hello World!”
t = list(s)
print(s)
print(t)

利用split()方法对字符串进行分割

str.split(str = “”, num = string.count(str))

str 表示分隔符,默认为空字符,包括空格、换行、指标符等

num – 分割次数,如果设置了这个参数,则最多分割成 num + 1 个字符串。默认为 -1,即分隔所有

s = "My name is Wang Shi Er. "
t = s.split()
print(t)
t = s.split(’ ', 4)
print(t)
t = s.split(‘Wang’)
print(t)


* 输出结果:



Hello World!
[‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ’ ', ‘W’, ‘o’, ‘r’, ‘l’, ‘d’, ‘!’]
[‘My’, ‘name’, ‘is’, ‘Wang’, ‘Shi’, ‘Er.’]
[‘My’, ‘name’, ‘is’, ‘Wang’, 'Shi Er. ']
['My name is ', ’ Shi Er. ']

进程已结束,退出代码 0


###### 2.3.1如何修改字符串?


python中不可以直接在字符串上修改,因为字符串不可修改


可以通过以下方式对字符串进行修改:


* 1、转换成 list 列表、修改后再转换成字符串
* 2、利用切片
* 3、重新赋值
* 4、利用 replace()函数


##### 2.4 format 格式化


python中指出格式化字符串的输出,利用 format 函数来调整字符串的格式


* 其中 **{ }** 表示占位符,format 里面的参数将逐个放入字符串中的占位符(由于 format 的参数要逐个放入占位符中,此时参数的数量必须大于等于占位符的数量)。



name = “王十二”
s = “大家好,我是{}”.format(name)
print(s)


* 输出结果:



大家好,我是王十二

进程已结束,退出代码 0


* python 字符串中{0}、{1} 表示占位符,其中非负整数表示这个位置为 format 中的第几个参数,从0开始计数, {x} 中的 x 不可以大于 format 中的参数数量



name = “王十二”
age = 24
s = “大家好,我是{0},今年{1}岁”.format(name, age)
print(s)


* 输出结果:



大家好,我是王十二,今年24岁

进程已结束,退出代码 0


* { }中可以加入冒号 : ,冒号后面可以控制数字的输出格式,包括宽度,小数点等
* p.s : 下表摘自菜鸟教程


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7811c80c048042ef92556ce78779169c.png)  
 ^ , < , > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。+ 表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格  
 b、d、o、x 分别是二进制、十进制、八进制、十六进制 。


### 3.列表相关操作


列表的定义在这里就不过多阐述,举例说明:



a = [‘apple’, ‘banana’, ‘pen’]

a 的类型

print(type(a))
print(a)


输出:



<class ‘list’>
[‘apple’, ‘banana’, ‘pen’]

进程已结束,退出代码 0


#### 3.1 如何访问列表


* 通过下标访问
* 下标只能为 [-n, -1] , 分为 [0, n - 1](顺数第几个), 和 [-n, -1] 倒数第几个
* p.s : 列表中的每一个元素都可以重新赋值,可以正常参与运算



a = [‘apple’, ‘banana’, ‘pen’]
print(a[0])
print(a[1])
print(a[-1])


输出:



apple
banana
pen
进程已结束,退出代码 0


#### 3.2 如何给列表添加元素


##### 1、在末尾添加单个元素(重要):


**a.append(x)** 为列表a末尾添加x元素



a = [‘apple’, ‘banana’, ‘pen’]
a.append(‘Hello’)
print("a = ",a)


输出:



a = [‘apple’, ‘banana’, ‘pen’, ‘Hello’]
进程已结束,退出代码 0


##### 2、在末尾添加多个元素:


**a.extend(x)** : 列表a末尾添加x,x为可迭代对象,包括列表、元组、字符串等,**不能是单个数字**



a = [‘apple’, ‘banana’, ‘pen’]
a.extend([1,2,3,‘a’])
print("a = ",a)


输出:



a = [‘apple’, ‘banana’, ‘pen’, 1, 2, 3, ‘a’]

进程已结束,退出代码 0


##### 3、在中间插入元素:


**a.insert(idx, x)** : 列表a在下标 idx 位置插入元素x,原来下标大于等于 idx 的元素往右移动一个位置。



a = [‘apple’, ‘banana’, ‘pen’]
a.insert(0, ‘0’)
a.insert(2, “2”)
print("a = ",a)


输出:



a = [‘0’, ‘apple’, ‘2’, ‘banana’, ‘pen’]
进程已结束,退出代码 0


##### 4、删除元素:


* 利用 del 删除列表中的元素: **del a[idx]** : 删除列表a中下标为 idx 的元素
* 利用 pop 删除列表中的元素:(1)**a.pop(idx)** :删除列表a下标为idx的元素 (2) **a.pop()** 删除列表a中的最后一个元素
* 区别: del 删除没有返回值, pop 删除返回的是删除的那个元素



利用del删除元素

a = [‘apple’, ‘banana’, ‘pen’]
del a[0]
print("a = ",a)

利用pop删除元素

a = [‘apple’, ‘banana’, ‘pen’]
del_a = a.pop(1)
print("a = ",a)
print(“删除的元素为:”, del_a)

pop 不加参数,默认删除末尾元素

a = [‘apple’, ‘banana’, ‘pen’]
del_a = a.pop()
print("a = ",a)
print(“删除的元素为:”, del_a)


输出:



a = [‘banana’, ‘pen’]
a = [‘apple’, ‘pen’]
删除的元素为: banana
a = [‘apple’, ‘banana’]
删除的元素为: pen

进程已结束,退出代码 0


##### 5、查找元素


* **a.count(x)**: 计算 x 在 a 中出现的次数,如果未出现则为0,否则为出现次数
* **a.index(x, start, stop)**: 计算元素 x 在列表下标 [start, stop) 中第一次出现的位置;(1)要保证 x 必须在区间 [start, stop) 中存在,否则报错;(2)start, end 不赋值,默认为在整个列表中查找;(3)只赋值 start , stop 默认为列表长度



a = [‘apple’, ‘banana’, ‘cat’, ‘pen’, ‘cat’]
print(a.count(‘apple’))

在整个列表中查找第一个 ‘cat’

print(a.index(‘cat’))

从下标3开始查找第一个 ‘cat’

print(a.index(‘cat’, 3))


输出:



1
2
4

进程已结束,退出代码 0


##### 6、翻转列表


* **a.reverse()** : 列表 a 进行翻转 , 调用两次变回原列表



a = [1, 2, 3, 4, 5]
a.reverse()
print('a = ', a)
a.reverse()
print('a = ', a)


输出:



a = [5, 4, 3, 2, 1]
a = [1, 2, 3, 4, 5]
进程已结束,退出代码 0


##### 7、求出列表长度


* **len(a)**:求出列表a的长度



a = [1, 2, 3, 4, 5]

输出a的长度

print(len(a))


输出:



5

进程已结束,退出代码 0


#### 3.3 遍历整个列表


* 利用for循环遍历列表



a = [‘apple’, ‘pen’, ‘hello’]
for i in a:
print(i)


输出:



apple
pen
hello
进程已结束,退出代码 0


* 利用for循环遍历列表,同时获取下标
* 相关函数: **enumerate(a, start = 0)** : 将列表a每个元素和对应的下标组合为一个带索引的序列,下标默认从0开始,遍历的时候同步遍历下标和值



a = [‘apple’, ‘pen’, ‘hello’]
for idx, i in enumerate(a):
print(idx, i)



0 apple
1 pen
2 hello
进程已结束,退出代码 0


#### 3.4 列表操作符


* ‘**+**’ : 连接两个列表
* ‘**a\*x**’ : a 是list, x 是int, 构成一个新列表,其内容为a复制x次



a = [0, 1, 2, 3, 4, 5]
print("a = ", a)
b = [‘a’, ‘b’, ‘c’]
print("b = ", b)
print(a + b)
print(a * 3)


输出:



a = [0, 1, 2, 3, 4, 5]
b = [‘a’, ‘b’, ‘c’]
[0, 1, 2, 3, 4, 5, ‘a’, ‘b’, ‘c’]
[0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5]
进程已结束,退出代码 0


#### 3.5 内置函数(常用的)


* sum(a):求和
* max(a):求列表a中的最大值
* min(a):求列表a中的最小值



a = [0, 1, 2, 3, 4, 5]
print("max = ", max(a))
print("min = ", min(a))
print("sum = ", sum(a))


输出:



max = 5
min = 0
sum = 15
进程已结束,退出代码 0


#### 3.6 列表解析式(重点操作)


* 列表解析式: [expression **for** member **in** iterable]
* 对于可迭代对象 iterable 的 每个元素 member, 都执行 expression 表达式构成的新的列表
* 下面代码对 列表 [0,1,2] 中的每个对象都执行了 x 二次方的运算,构成了一个新的列表



a = [x**2 for x in range(3)]
print(a)


输出:



[0, 1, 4]
进程已结束,退出代码 0


p.s: range()函数的细节会放在for循环部分进行说明


* 列表解析式:可以基于已有的列表筛选并生成相关的新的列表
* [expression **for** member **in** iterable if conditional ]
* 对于可迭代对象 iterable 的每个元素 member ,如果满足条件 conditional 才执行 expression 构成新的列表
* 下面代码表示 对于列表[0,1,2,3,4,5,6,7,8,9,10],需要满足x为偶数,才能加入新列表,新列表元素为x的平方



a = [x**2 for x in range(11) if x % 2 == 0]
print(a)


输出:



[0, 4, 16, 36, 64, 100]
进程已结束,退出代码 0


#### 3.7 列表切片



a = [1,‘apple’,‘banana’, 2, 3, 4, 5]

切片[2:4], 步长为1

b = a[2:4]
print(b)

切片[0,n], 步长为2

c = a[::2]
print©

前3个元素

d = a[:3]
print(d)

后3个元素

e = a[-3:]
print(e)


输出:



[‘banana’, 2]
[1, ‘banana’, 3, 5]
[1, ‘apple’, ‘banana’]
[3, 4, 5]
进程已结束,退出代码 0


#### 3.8 复制列表


* 先明确一个概念,列表的赋值不等同于复制,列表的赋值只是引用,相当于两个变量名代表同一个列表



a = [1,‘apple’,‘banana’, 2, 3, 4, 5]
b = a
b[0] = “hello”
print("b = ", b)
print("a = ", a)


输出:



b = [‘hello’, ‘apple’, ‘banana’, 2, 3, 4, 5]
a = [‘hello’, ‘apple’, ‘banana’, 2, 3, 4, 5]
进程已结束,退出代码 0


* 正确的复制方法:
* (1)利用切片: **b = a[:]**
* (2)利用 copy函数: **b = a.copy()**



a = [1,‘apple’,‘banana’, 2, 3, 4, 5]
b = a.copy()
c = a[:]
print("a = ", a)
print("b = ", b)
print("c = ", c)


输出:



a = [1, ‘apple’, ‘banana’, 2, 3, 4, 5]
b = [1, ‘apple’, ‘banana’, 2, 3, 4, 5]
c = [1, ‘apple’, ‘banana’, 2, 3, 4, 5]
进程已结束,退出代码 0


### 4.字典的相关操作


#### 4.1 创建字典


* python 中用 **{ }** 表示字典,可以使用 { } 创建一个字典
* 字典中的 key 和 value 之间用冒号 : 分隔,元素之间用 逗号, 分隔
* 字典的 key 只能为数字、字符串、元组,大多数情况使用字符串作为key
* value的类型没有限制



创建了一个空字典

a = {}
print("type(a) = ", type(a))
print("a = ", a)

创建字典

a = {‘a’:123, ‘b’:456, 0:789}
print("type(a) = ", type(a))
print("a = ", a)


输出:



type(a) = <class ‘dict’>
a = {}
type(a) = <class ‘dict’>
a = {‘a’: 123, ‘b’: 456, 0: 789}

进程已结束,退出代码 0


* 使用 **dict** 创建字典
* 此时 key 只能是字符串





### 最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

#### 👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

![](https://img-blog.csdnimg.cn/img_convert/604bae65027d4d67fb62410deb210454.png)

#### 👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

![](https://img-blog.csdnimg.cn/img_convert/fa276175617e0048f79437bd30465479.png)



#### 👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

![](https://img-blog.csdnimg.cn/img_convert/16ac689cb023166b2ffa9c677ac40fc0.png)



#### 👉实战案例👈



学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。



因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

![](https://img-blog.csdnimg.cn/img_convert/0d8c31c50236a205928a1d8ae8a0b883.png)



#### 👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

![](https://img-blog.csdnimg.cn/img_convert/99461e47e58e503d2bc1dc6f4668534a.png)




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)**
![img](https://i-blog.csdnimg.cn/blog_migrate/ff3d801c11c694422563c90c6afe2068.png)

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
给大家节省了很多时间。

![](https://img-blog.csdnimg.cn/img_convert/fa276175617e0048f79437bd30465479.png)



#### 👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

![](https://img-blog.csdnimg.cn/img_convert/16ac689cb023166b2ffa9c677ac40fc0.png)



#### 👉实战案例👈



学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。



因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

![](https://img-blog.csdnimg.cn/img_convert/0d8c31c50236a205928a1d8ae8a0b883.png)



#### 👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

![](https://img-blog.csdnimg.cn/img_convert/99461e47e58e503d2bc1dc6f4668534a.png)




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)**
[外链图片转存中...(img-t4I2igZk-1713208285242)]

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 22
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值