字符串可以用单引号、双引号、三引号括起来,字符串为不可变类型。

python中每个字符串自带下标和索引,可用 str[x] 来精确访问字符串 str 中的某个字符

切片: 指对 字符串、列表、元组 进行截取其中一部分的操作

语法: 序列[开始位置下标 : 结束位置下标 : 步长]

其中切片不包含结束位置下标对应的数据 ,即开始位置下标和结束位置下标为 [ ) 的包含形式

下标 和 步长 均可不写或写负数,步长默认为1,若下标开始到结束的方向与步长的方向冲突,则无法选取出数据

字符串的查找: find() 、index() 、count() 、rfind() 、rindex()

find() : 检测某个子串是否包含在这个字符串中,如果存在则返回这个子串开始位置的下标,否则返回-1 字符串序列.find( 子串 , 开始位置下标 , 结束位置下标 )

开始和结束位置下标可以省略,表示在整个字符串序列中查找

index() : 与find()函数的用法一样,但如果不存在要查找的子串,则会报错

count() :返回某子串在该字符串中出现的次数,若不存在则返回0

rfind() 与 rindex() 查找方向为从右侧开始,其功能与 find() 与 index() 相同

字符串的替换 :replace() 替换 字符串序列.replace ( 旧子串、新子串、替换次数 )

注意: replace函数并不会改变原有字符串的数据,修改后的数据是replace函数的返回值

字符串的分割: split() 分割,返回一个列表,丢失分割字符 字符串序列.split(分割字符,分割次数)

注意:split函数也不会改变原有字符串数据,修改后的数据为函数返回值

列表的合并:join() 合并,返回一个字符串,添加连接字符 连接字符串.join(多字符串组成的列表)

注意: join() 合并 是 split() 分割 的逆序操作

字符串修改大小写函数:

capitalize() 将字符串第一个字母转换为大写,其余均为小写

title() 将字符串中每个单词的首字母转化成大写,其余均为小写

lower() 将字符串中的大写全部转换为小写

upper() 将字符串中的小写全部转换为大写

例:

initial: brotheR aNd me

capitalize: Brother and me

title: Brother And Me

lower: brother and me

upper: BROTHER AND ME

字符串删除空白字符函数:

lstrip() : 删除字符串左侧空白字符

rstrip() : 删除字符串右侧空白字符

strip() : 删除字符串两侧空白字符

例:

initial: " brother and me "

lstrip: "brother and me "

rstrip: " brother and me”

strip: "brother and me”

字符串对齐函数: ljust() 、 rjust() 、center()

返回 一个原字符串 左/右/中 对齐,并用指定字符(默认空格)填充至对应长度的新字符串 字符串序列.ljust( 长度 , 填充字符 )

字符串序列.rjust( 长度 , 填充字符 )

字符串序列.center( 长度 , 填充字符 )

例:

initial: brother and me

ljust: brother and me----------------

rjust: ----------------brother and me

center: --------brother and me--------

字符串判断开头或结尾函数:

startswith() : 检查字符串是否以指定子串开头,是则返回True,否则返回False。如果设置开始和结束位置下标,则在指定范围内检查 字符串序列.startswith(子串,开始位置下标,结束位置下标)

endswith() : 检查字符串是否以指定子串结尾,用法与 startswith()相同 字符串序列.endswith(子串,开始位置下标,结束位置下标)

字符串字符类型判断函数:

isalpha() : 如果字符串非空且只包含字母则返回True , 否则返回False

isdigit() : 如果字符串非空且只包含数字则返回True , 否则返回False

isalnum() : 如果字符串非空且只包含数字或字母则返回True, 否则返回False

isspace() : 如果字符串非空且只包含空格则返回True , 否则返回False

列表 : 可以用下标选取指定数据,列表为可变类型。

列表数据查找函数:

index() : 返回指定数据所在位置的下标,若数据不存在则报错 列表序列.index(数据, 开始位置下标, 结束位置下标)

count() : 返回指定数据在该列表出现的次数,若数据不存在则返回0 列表序列.count(数据)

len() : 返回列表的长度,即列表中数据的个数 len(列表序列)

判断列表中是否存在指定数据:

in : 判断指定数据在某个序列的存在,存在返回True,否则返回False '指定数据' in 列表序列

not in : 与 in 的用法相同,返回结果相反

列表数据增加函数:

append() : 列表结尾追加数据,若数据为一个序列,则直接追加整个序列到列表的结尾位置 列表序列.append(数据)

extend() : 列表结尾追加数据,若数据为一个序列,则将序列的数据逐一添加到列表,若数据为字符串,则将单独的每个字符逐一添加到列表 列表序列.extend(数据)

insert() : 指定位置新增数据,增添方式与 append() 相同 列表序列.insert(位置下表,数据)

列表数据删除函数:

del 目标(列表名 或 列表指定下标数据)

pop() : 删除指定下标的数据(默认为最后一个),并返回该数据。 列表序列.pop(下标)

remove() : 移除列表中某个数据的第一个匹配项,若匹配失败则报错 列表序列.remove(数据)

clear() : 清空列表中的所有数据 列表序列.clear()

列表数据修改函数:

修改指定下标数据: 列表序列[下标] = 数据

reverse() : 将列表数据的顺序逆置 列表序列.reverse()

sort() : 对列表的数据进行排序 列表序列.sort( key = None, reverse = False)

注意: reverse = True 降序 reverse = False 升序(默认)

列表数据复制函数:

copy() : 列表数据复制 新列表序列 = 原列表序列.copy()

即将原列表的数据复制到新列表中

列表的循环遍历:

while循环方法 : i = 0

while i < len(list):

print(list[i])

i += 1

for循环方法 : for i in list:

print(i)

列表嵌套:指一个列表里包含了其他的子列表。

例: List = [ ['a' , 'b' , 'c'] , ['1' , '2' , '3'] , ['&' , '$' , '%'] ]

列表综合训练: #将8位老师随机分配到3个办公室中

import random

teacher = ['a1','a2','a3','a4','a5','a6','a7','a8']

room = [[],[],[]]

for i in teacher:

n = random.randint(0,2)

room[n].append(i)

print(room)

i = 1

for r in room:

print(f'办公室{i}的人数是{len(r)},他们分别为:',end = ' ')

for name in r:

print(name,end = ' ')

print()

i += 1

元组: 一个元组可以存储多个数据(与列表相同),但元组内的数据是不能修改的。

元组名 (数据1 , 数据2 , 数据3)

注意: 如果定义的元组只有一个数据,那么需要添加逗号,凑则数据类型为该数据类型,而不是 元组(tuple) 数据类型,如 tuple = ("x’ , )

元组的常见操作:

按下标查找数据 : 如tuple1[0] 、 tuple1[1]等

index() : 查找某个数据,用法与字符串、列表的index相同

count() : 统计某个数据在当前元组出现的次数

len() : 统计元组中的数据个数

元组数据的修改:

元组内的直接数据如果修改则立即报错

如果元组里面有列表,可直接修改列表内的数据,如 ("abc’ , "qwe’ , ["123’ , "456’ , "789’] , "jkl’) 元组就可以修改其中的 "123’ , "456’ , "789’ 数据

字典:字典里的数据是以键值对形式存储的。字典为可变类型。

特点: 符号为大括号,数据为键值对形式出现,各个键值对之间用逗号隔开。 dict1 = { '键1' : '值1' , '键2' : '值2' , '键3' : '值3' }

空字典除了可以用空大括号创建,也可以用函数创建: dict2 = dict()

字典常见操作:

增 / 改: 字典序列["key’] = 值

注意: 如果key存在则修改该键对应的值,如果key不存在则新增此键值对

删:

del(dict) 删除字典

del dict['Key'] 删除字典中指定键值对

dict.clear() 清空字典

查:

按key值写法直接查找: 字典序列["键’]

按函数写法查找: get() keys() values() items()

get() : 获取某个键对应的值 字典序列.get(key , 默认值)

注意:若当前查找的key不存在则返回默认值,若默认值省略不写则返回None

keys() : 获取字典中所有的key,并返回可迭代对象 字典序列.keys()

values() : 获取字典中所有的values,并返回可迭代对象 字典序列.values()

items() : 获取字典中所有的键值对(key 和 values),并返回可迭代对象 ,里面的数据是元组 字典序列.items()

字典的循环遍历:

遍历字典的Key: for key in dict1.keys():

print(key)

遍历字典的Value: for value in dict1.values():

print(value)

遍历字典的元素: for item in dict1.items():

print(item)

遍历字典的键值对(拆包): for key, value in dict1.items():

print(f'{key} = {value}')

集合: 创建集合可使用 {} 或 set() ,但是如果要创建空集合只能使用 set() , 因为使用 {} 会创建空字典。

集合数据特点: 集合里面的数据会自动去重,不允许重复;集合里面的数据没有顺序,且不支持下标。集合是可变类型。

集合的创建:

直接创建: s1 = {10 , 20 , 30 , 40 , 50}

使用set()创建: s2 = set('brother')

创建空集合: s3 = set()

集合中数据的常见操作:

增加数据: add() update()

集合.add(数据) 增加单个数据,要增加的数据在原集合中存在的话,不进行任何操作

集合.update(数据列表) 在集合中增加数据序列

删除数据: remove() discard() pop()

集合.remove(数据) 删除集合中的指定数据,如果数据不存在则会报错

集合.discard(数据) 删除集合中的指定数据,如果数据不存在也不会报错

集合.pop() 随即删除集合中的某个数据,并返回这个数据

查找数据: in 判断数据在集合序列 not in 判断数据不在集合序列

公共操作:运算符、公共方法、容器类型转换

运算符:

+ 合并,支持字符串、列表、元组

* 复制,支持字符串、列表、元组

in 元素是否存在,支持字符串、列表、元组、字典

not in 元素是否不存在,支持字符串、列表、元组、字典

公共方法:

len() 计算容器中元素个数

del() 删除元素

max() 返回容器中元素的最大值

min() 返回容器中元素的最小值

range(start,end,step) 生成从start到end的数字(其中不包含end数字),步长为step,供for循环使用

enumerate() 将一个可遍历的数据对象(列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环中 enumerate(可遍历对象, start=0)

容器类型转换:

tuple(序列): 将某个序列转换成元组

list(序列): 将某个序列转换成列表

set(序列): 将某个序列转换成集合

推导式(生成式): 列表推导式、字典推导式、集合推导式

作用: 化简代码

列表推导式:用一个表达式创建一个有规律的列表或控制一个有规律列表。

创建0-10的列表: list = [i for i in range(10)]

创建0-10的偶数列表: list = [i for i in range(10) if i % 2 == 0]

多个for循环列表: list = [(i , j) for i in range(3) for j in range(3)]

字典推导式:快速合并列表为字典或提取字典中目标数据

赋值体验: dict = {i:i*2 for i in range(1,5)}

将两个列表合并为字典: list1 = ['name' , 'age' , 'gender']

list2 = ['Tom' , 20 , 'man']

dict = { list1[i] : list2[i] for i in range(len(list1)) }

提取字典中目标数据: counts = {'a' : 150 , 'b' : 200 , 'c' : 250}

count = {key : value for key , value in counts.items() if value >= 200}

集合推导式: list = [1,1,2]

set = {i * 2 for i in list}

python必背入门代码-Python零基础入门学习笔记(一)相关推荐

  1. python新手入门代码-新手零基础入门Python项目实战

    ├─01 实用主义学Python网络与爬虫 │ 0.课程适用说明 │ 1. 如何监测 GitHub 项目更新并自动打开网页 │ 2. 如何快速对比多个库的数值 │ 3. 如何实现发送新库提醒到手机 │ ...

  2. Uniapp零基础开发学习笔记(5) -组件入门及容器组件使用

    Uniapp零基础开发学习笔记(5) -组件入门及容器组件使用 按照官网教程学习使用组件,并且重点把容器组件的应用进行了练习. 1.官网关于组件的介绍 组件是视图层的基本组成单元,是一个单独且可复用的 ...

  3. 飞桨图像分类零基础训练营学习笔记和心得体会

    飞桨图像分类零基础训练营学习笔记和心得体会 参加了百度一线AI工程师为大家讲解图像分类模型部署.课程内容包含Paddle2.0转静合一轻松导出模型.Paddle Lite环境准备.Paddle Lit ...

  4. 长短时记忆神经网络python代码_零基础入门深度学习(6) - 长短时记忆网络(LSTM)

    无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就o ...

  5. python和循环语句_Python 小白零基础入门 -- 条件语句和循环语句

    Python 小白零基础入门 -- 条件语句和循环语句 点击上方 "Python 读数", 选择 "星标" 公众号 重磅干货, 第一时间送达 Python 零基 ...

  6. python做excel自动化视频教程-从零基础入门到精通用Python处理Excel数据视频教程...

    从零基础入门到精通用Python处理Excel数据视频教程 1.从零基础开始用python处理Excel数据 1-1 什么是python.mp4 1-2 为什么要学习用Python处理Excel表格. ...

  7. 小甲鱼python教程视频怎么样-小甲鱼零基础入门学习Python视频教程全套96集

    资源介绍 教程名称: 小甲鱼零基础入门学习Python视频教程全套96集 课程简介: xa0 xa0 Python具有跨平台特点,Python可以在各种不同类型的计算机上运行,Windows.MAC. ...

  8. SEO新手入门,SEO零基础入门教程,新手做SEO怎么做

    seo的作用是对网站进行seo优化,可以给网站带来大量的搜索引擎流量.但是想要做好网站优化也有难度,尤其是对于seo新手来说,因为缺乏理论和实战,所以seo新手需要多加练习.那么具体seo新手入门应该 ...

  9. python windows桌面程序开发_Python 零基础入门

    Photo by Chris Ried on Unsplash Python 是一种易于学习又功能强大的编程语言.它提供了高效的高级数据结构,还有简单有效的面向对象编程.Python 优雅的语法和动态 ...

  10. Python爬虫超详细讲解(零基础入门,老年人都看的懂)!

    注重版权,转载请注明原作者和原文链接 作者:码农BookSea 原文链接:https://blog.csdn.net/bookssea/article/details/107309591 先看后赞,养 ...

最新文章

  1. Java项目:考试系统Java基础Gui(java+Gui)
  2. echarts 地图 免费离线js,json包分享
  3. python编程输入标准-Python练习题,,T1.编写程序,输入
  4. Servlet中使用RequestDispatcher调派请求--include
  5. POPTEST学员就业面试题目!!!!!
  6. 足不出户,游遍七大洲,不可错过的14部地理纪录片!
  7. JeeSite 4.0 (1.0)开发环境部署运行
  8. 福大计算机课程表,教学文件 - 福州大学电气工程与自动化学院
  9. HTML5高层模块不应该依赖于底层模块
  10. 手工matlab下K-means聚类算法实现而不是调用库函数
  11. The chain rule(链式法则)
  12. 获取计算机管理权限,Win7如何获得管理员权限
  13. android11最新版本是多少,Android11正式发布 安卓11正式版系统发布更新时间
  14. STM32入门之LCD1602驱动
  15. Linux驱动开发 -- touch驱动注册
  16. 火狐浏览器安装EditThisCookie插件
  17. Linux查看预装Windows,如何判断电脑出厂预装的什么系统
  18. IT职业教育(13)什么是职业教育?
  19. 程序员应了解的著作权(版权)
  20. [AV1] Chroma from Luma Prediction

热门文章

  1. learning java AWT 布局管理器CardLayout
  2. 微信小程序:冒泡事件及其阻止
  3. 前台传JSON到后台
  4. HDU1850 Being a Good Boy in Spring Festival
  5. Bailian4081 树的转换【DFS】
  6. JSK-382 元音字母复制【入门】
  7. POJ3978 Primes【素数筛选+前缀和】
  8. B00011 unordered_map
  9. advanced ip scanner —— 局域网下 ip 及设备的扫描
  10. ceil() 与 floor() 与 round()