Python数据序列
Python数据序列
一、了解字符串
1、字符串的定义
字符串是 Python 中最常用的数据类型。我们一般使用引号来创建字符串。
案例1:使用单引号或双引号定义字符串变量
str1 = 'abcdefg'
str2 = "hello world"print(type(str1)) # <class 'str'>
print(type(str2)) # <class 'str'>
案例2:使用3个引号定义字符串变量
name1 = '''I am Tom, Nice to meet you!'''
print(name1)
print(type(name1))print('-' * 20)name2 = """I am Jennify,Nice to meet you!"""
print(name2)
print(type(name2))
注意:三引号形式的字符串支持换行操作
案例3:思考如何使用字符串定义"I’m Tom"
使用单引号情况
str1 = 'I'm Tom'
运行结果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pIyoyreW-1639396514518)(media/image-20210310101123953.png)]
出现以上问题的主要原因在于,以上字符串的定义代码出现了(syntax)语法错误。单引号在字符串定义中必须成对出现,而且Python解析器在解析代码时,会自动认为第一个单引号和最近的一个单引号是一对!
如果一定要在单引号中在放入一个单引号,必须使用==反斜杠==进行转义。
str1 = 'I\'am Tom'
使用双引号情况
str2 = "I'm Tom"
注:在Python中,如果存在多个引号,建议① 单引号放在双引号中 ② 双引号放在单引号中。
2、字符串输入
在Python代码中,我们可以使用input()
方法来接收用户的输入信息。记住:在Python中,input()方法返回的结果是一个字符串类型
的数据。
name = input('请输入您的姓名:')
age = input('请输入您的年龄:')
address = input('请输入您的住址:')print(name, age, address)
3、字符串的输出
普通输出
print(变量名称)
print(变量名称1, 变量名称2, 变量名称3)
格式化输出
① 百分号(Python2和Python3)
name = input('请输入您的姓名:')
age = input('请输入您的年龄:')
address = input('请输入您的住址:')print('我的名字是%s,今年%d岁了,家里住在%s...' % (name, age, address))
② format方法(Python3)
name = input('请输入您的姓名:')
age = input('请输入您的年龄:')
address = input('请输入您的住址:')print('我的名字是{},今年{}岁了,家里住在{}...'.format(name, age, address))
③ f形式(Python3)
name = input('请输入您的姓名:')
age = input('请输入您的年龄:')
address = input('请输入您的住址:')print(f'我的名字是{name},今年{age}岁了,家里住在{address}...')
延伸:
name = input('请输入您购买商品的名称:')
price = float(input('请输入您购买商品的价格:')) # 18.5print(f'购买商品名称:{name},商品价格:{price:.2f}')
4、字符串在计算机底层的存储形式
Python中的字符串属于序列结构。所以其底层存储占用一段连续的内存空间。
str1 = 'iloveyou'
注意:索引下标从0开始
5、聊聊索引下标
索引下标
,就是编号。
比如火车座位号,座位号的作用:按照编号快速找到对应的座位。同理,下标的作用即是通过下标快速找到对应的数据。
举个例子:
name = 'abcdef'
print(name[0]) # a
print(name[3]) # d
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a2zKLBua-1639396514519)(media/image-20210310104907464.png)]
二、字符串切片
1、什么是字符串切片
所谓的切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
2、字符串切片基本语法
顾头不顾尾(前闭后开):
序列名称[开始位置下标:结束位置下标:步长]
① 不包含结束位置下标对应的数据, 正负整数均可;
② 步长是选取间隔,正负整数均可,正数从左向右,负数从右向左。默认步长为1。
3、字符串切片小口诀
记口诀:切片其实很简单,只顾头来尾不管,步长为正正向移,步长为负则逆向移
如果还是有点不太清楚这个原理,建议大家对字符串进行画图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h5dwJbuq-1639396514520)(media/image-20210310111904137.png)]
4、字符串切片的小栗子
案例1:
numstr = '0123456789'
# 1、从2到5开始切片,步长为1
print(numstr[2:5:1])
print(numstr[2:5])
# 2、只有结尾的字符串切片:代表从索引为0开始,截取到结尾字符-1的位置
print(numstr[:5])
# 3、只有开头的字符串切片:代表从起始位置开始,已知截取到字符串的结尾
print(numstr[1:])
# 4、获取或拷贝整个字符串
print(numstr[:])
# 5、调整步阶:类似求偶数
print(numstr[::2])
# 6、把步阶设置为负整数:类似字符串翻转
print(numstr[::-1])
# 7、起始位置与结束位置都是负数(遵循一个原则:必须是从左向右截取)
print(numstr[-4:-1])
# 8、结束字符为负数,如截取012345678
print(numstr[:-1])
案例2:给定一个图片的名称为"avatar.png",使用Python方法获取这个图片的名称(avatar)以及这个图片的后缀(.png)。
分析:① 建议先获取点号的位置(目前还未学习,只能一个一个数)
② 从开头切片到点号位置,得到的就是文件的名称
③ 从点号开始切片,一直到文件的结尾,则得到的就是文件的后缀
filename = 'avatar.png'
# 获取点号的索引下标
index = 6
# 使用切片截取文件的文件
name = filename[:index]
print(f'上传文件的名称:{name}')# 使用切片截取文件的后缀
postfix = filename[index:]
print(f'上传文件的后缀:{postfix}')
三、字符串的操作方法(内置)
1、字符串中的查找方法
查找子串在字符串中的位置或出现的次数
基本语法:
字符串.find(要查找的字符或者子串)
编号 | 函数 | 作用 |
---|---|---|
1 | find() | 检测某个子串是否包含在这个字符串中,如果在返回这个子串开始的位置下标,否则则返回-1。 |
2 | index() | 检测某个子串是否包含在这个字符串中,如果在返回这个子串开始的位置下标,否则则报异常。 |
3 | rfind() | 和find()功能相同,但查找方向为右侧开始。 |
4 | rindex() | 和index()功能相同,但查找方向为右侧开始。 |
5 | count() | 返回某个子串在字符串中出现的次数 |
☆ find()方法
作用:检测某个子串是否包含在这个字符串中,如果在返回这个子串开始的位置下标,否则则返回-1。
# 定义一个字符串
str1 = 'hello world hello linux hello python'
# 查找linux子串是否出现在字符串中
print(str1.find('linux'))
# 在str1中查找不存在的子串
print(str1.find('and'))
☆ index()方法
index()方法其功能与find()方法完全一致,唯一的区别在于当要查找的子串没有出现在字符串中时,find()方法返回-1,而index()方法则直接报错。
str1 = 'apple, banana, orange'
# 判断apple是否出现在字符串str1中
print(str1.index('apple'))
print(str1.index('pineapple'))
☆ rfind()与rindex()方法
r = right,代表从右开始查找
字符串序列.rfind(子串)
字符串序列.rindex(子串)
强调:rfind()方法与rindex()方法适合于查找子串在字符串中出现了多次的情况
案例:有一个文件名称叫20210310axvu.avatar.png,其中点号出现了2次,这个时候,如果我想获取文件的后缀.png,代码应该如何编写?
filename = '20210310axvu.avatar.png'
# 求出点号在字符串中第一次出现的位置
# index = filename.find('.')
# print(index)
# 求出点号在字符串中最后一次出现的位置
index = filename.rfind('.')
print(index)
rfind()方法和rindex()方法语法上完全一致,唯一的区别就是对子串没有出现在字符串的中的情况,rfind()返回-1,rindex()返回错误。
☆ count()方法
主要功能:求子串在字符串中出现的次数
基本语法:
字符串.count('子串', 开始位置下标, 结束位置下标)
案例:获取字符串中and关键字出现的次数
str1 = 'hello world and hello linux and hello python'
# 不限定字符串长度
ands = str1.count('and')
# 限定开始查找的位置和结束位置
# ands = str1.count('and', 10, 30)
print(f'and字符串出现的次数为:{ands}')
2、字符串的修改方法
所谓修改字符串,指的就是通过函数(方法)的形式修改字符串中的数据。
编号 | 函数 | 作用 |
---|---|---|
1 | replace() | 返回替换后的字符串 |
2 | split() | 返回切割后的列表序列 |
3 | capitalize() | 首字母大写 |
4 | title() | 所有单词首字母大写 |
5 | upper()与lower() | 返回全部大写或小写的字符串 |
6 | lstrip()、rstrip()与strip() | 去除左边、右边以及两边的空白字符 |
7 | ljust()、rjust()与center() | 返回原字符串左对齐、右对齐以及居中对齐 |
☆ replace()方法
基本语法:
字符串.replace(要替换的内容, 替换后的内容, 替换的次数-可以省略)
案例:编写一个字符串,然后把字符串中的linux替换为python
str1 = 'hello linux and hello linux'
# 把字符串中所有linux字符替换为python
print(str1.replace('linux', 'python'))
# 把字符串中的第一个linux进行替换为python
print(str1.replace('linux', 'python', 1))
# 把and字符串替换为&&
print(str1.replace('and', '&&'))
==目前在工作中,replace主要用于实现关键字替换或过滤功能。北京 > BJ,论坛关键字过滤,共产党 => ***
☆ split()方法
作用:对字符串进行切割操作,返回一个list()列表类型的数据
str1 = 'apple-banana-orange'
print(str1.split('-'))
☆ capitalize() 方法
作用:把字符串的首字母大写,其他字符全部小写
☆ title()方法
作用:把字符串中的所有单词的首字母大写,组成大驼峰
str1 = 'myName'
# 把str1变成首字母大写字符串
print(str1.capitalize())str2 = 'student_manager'
# 把str2变成大驼峰
print(str2.title().replace('_', ''))
☆ upper()与lower() 方法
upper():把字符串全部转换为大写形式
lower():把字符串全部转换为小写形式
# 用户名以及密码验证案例
username = input('请输入您的账号:')
password = input('请输入您的密码:')# 把username和password全部转换为大写或小写
print(username.lower())
print(password.upper())
☆ lstrip()、rstrip()与strip()
strip() 方法主要作用:删除字符串两边的空白字符(如空格)
lstrip() 方法 == left + strip,作用:只删除字符串左边的空白字符
rstrip() 方法,作用:只删除字符串右边的空白字符
# 用户名验证案例
username = input('请输入您的账号:')# 去除username两边的空白字符
print(len(username))
print(username.strip())
print(len(username.strip()))
☆ ljust()、rjust()、center()
作用:返回原字符串左对齐、右对齐以及居中对齐
基本语法:
字符串序列.ljust(长度, 填充字符)
案例:定义一个字符串,要求返回长度为10个字符,不足的使用.点号进行填充
str1 = 'python'
# 左对齐
print(str1.ljust(10, '.'))
# 右对齐
print(str1.rjust(10, '#'))
# 居中对齐
print(str1.center(10, '@'))
4、字符串的判断方法
所谓判断即是判断真假,返回的结果是布尔型数据类型:True 或 False。
编号 | 函数 | 作用 |
---|---|---|
1 | startswith() | 检查字符串是否是以指定子串开头,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内检查。 |
2 | endswith() | 检查字符串是否是以指定子串结尾,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内检查。 |
3 | isalpha() | 如果字符串所有字符(至少有一个字符)都是字母则返回 True, 否则返回 False。 |
4 | isdigit() | 如果字符串只包含数字则返回 True 否则返回 False。 |
5 | isalnum() | Python isalnum() 方法检测字符串是否由字母和数字组成。如果字符串所有字符(至少有一个字符)都是字母或数字则返 回 True,否则返回 False。 |
6 | isspace() | 如果字符串中只包含空白,则返回 True,否则返回 False |
☆ startswith()
作用:检查字符串是否是以指定子串开头,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内检查。
str1 = 'python program'
print(str1.startswith('python'))
☆ endswith()
作用:检查字符串是否是以指定子串结尾,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内检查。
str2 = 'avatar.png'
print(str2.endswith('.png'))if str2.endswith('.png') or str2.endswith('.jpg') or str2.endswith('.gif'):print('是一张图片格式的图片')
else:print('您上传的文件格式异常')
☆ isalpha()
作用:如果字符串所有字符(至少有一个字符)都是字母则返回 True, 否则返回 False。
str1 = 'admin'
str2 = 'admin123'print(str1.isalpha()) # True
print(str2.isalpha()) # False
☆ isdigit()
作用:如果字符串只包含数字则返回 True 否则返回 False。
password = input('请输入您的银行卡密码:')if len(password) == 6 and password.isdigit():print('输入密码成功,正在验证...')
else:print('密码输入错误,请重新输入')
☆ isalnum()
作用:Python isalnum() 方法检测字符串是否由字母和数字组成。如果字符串所有字符(至少有一个字符)都是字母或数字则返 回 True,否则返回 False。
username = input('请输入的您的用户名(只能为字母+数字形式):')if username.isalnum():print('合理的用户名,正在录入系统...')
else:print('输入的用户名有误,请重新输入...')
☆ isspace()
作用:如果字符串中只包含空白,则返回 True,否则返回 False(逆向思维)
str1 = ' ' # 最少要包含一个空白字符
print(str1.isspace())username = input('请输入的您的用户名:')
if len(username) == 0 or username.isspace():print('您没有输入任何字符...')
else:print(f'您的输入的字符{username}')
四、列表及其应用场景
为什么需要列表思考:
有一个人的姓名(TOM)怎么书写存储程序?答:变量。
思考:如果一个班级100位学生,每个人的姓名都要存储,应该如何书写程序?声明100个变量吗?
答:No,我们使用列表就可以了, 列表一次可以存储多个数据。
在Python中,我们把这种数据类型称之为列表。但是在其他的编程语言中,如Java、PHP、Go等等中其被称之为数组。
2、列表的定义
列表序列名称 = [列表中的元素1, 列表中的元素2, 列表中的元素3, ...]
案例演示:定义一个列表,用于保存苹果、香蕉以及菠萝
list1 = ['apple', 'banana', 'pineapple']
# list列表类型支持直接打印
print(list1)
# 打印列表的数据类型
print(type(list1))
注意:列表可以一次存储多个数据且可以为不同的数据类型
3、列表的相关操作
列表的作用是一次性存储多个数据,程序员可以对这些数据进行的操作有:
增、删、改、查。
☆ 查操作
列表在计算机中的底层存储形式,列表和字符串一样,在计算机内存中都占用一段连续的内存地址,我们向访问列表中的每个元素,都可以通过"索引下标"的方式进行获取。
如果我们想获取列表中的某个元素,非常简单,直接使用索引下标:
list1 = ['apple', 'banana', 'pineapple']
# 获取列表中的banana
print(list1[1])
查操作的相关方法:
编号 | 函数 | 作用 |
---|---|---|
1 | index() | 指定数据所在位置的下标 |
2 | count() | 统计指定数据在当前列表中出现的次数 |
3 | in | 判断指定数据在某个列表序列,如果在返回True,否则返回False |
4 | not in | 判断指定数据不在某个列表序列,如果不在返回True,否则返回False |
举个栗子:
# 1、查找某个元素在列表中出现的位置(索引下标)
list1 = ['apple', 'banana', 'pineapple']
print(list1.index('apple')) # 0
# print(list1.index('peach')) # 报错# 2、count()方法:统计元素在列表中出现的次数
list2 = ['刘备', '关羽', '张飞', '关羽', '赵云']
# 统计一下关羽这个元素在列表中出现的次数
print(list2.count('关羽'))# 3、in方法和not in方法(黑名单系统)
list3 = ['192.168.1.15', '10.1.1.100', '172.35.46.128']
if '10.1.1.100' in list3:print('黑名单IP,禁止访问')
else:print('正常IP,访问站点信息')
☆ 增操作
编号 | 函数 | 作用 |
---|---|---|
1 | append() | 增加指定数据到列表中 |
2 | extend() | 列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表 |
3 | insert() | 指定位置新增数据 |
☆ append()
append() :在列表的尾部追加元素
names = ['孙悟空', '唐僧', '猪八戒']
# 在列表的尾部追加一个元素"沙僧"
names.append('沙僧')
# 打印列表
print(names)
注意:列表追加数据的时候,直接在原列表里面追加了指定数据,即修改了原列表,故列表为可变类型数据。
☆ extend()方法
列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表
案例:
list1 = ['Tom', 'Rose', 'Jack']
# 1、使用extend方法追加元素"Jennify"
# names.extend("Jennify")
# print(names)# 2、建议:使用extend方法两个列表进行合并
list2 = ['Hack', 'Jennify']
list1.extend(list2)print(list1)
总结:extend方法比较适合于两个列表进行元素的合并操作
☆ insert()方法
作用:在指定的位置增加元素
names = ['薛宝钗', '林黛玉']
# 在薛宝钗和林黛玉之间,插入一个新元素"贾宝玉"
names.insert(1, '贾宝玉')
print(names)
☆ 删操作
编号 | 函数 | 作用 |
---|---|---|
1 | del 列表[索引] | 删除列表中的某个元素 |
2 | pop() | 删除指定下标的数据(默认为最后一个),并返回该数据 |
3 | remove() | 移除列表中某个数据的第一个匹配项。 |
4 | clear() | 清空列表,删除列表中的所有元素,返回空列表。 |
☆ del删除指定的列表元素
基本语法:
names = ['Tom', 'Rose', 'Jack', 'Jennify']
# 删除Rose
del names[1]
# 打印列表
print(names)
☆ pop()方法
作用:删除指定下标的元素,如果不填写下标,默认删除最后一个。其返回结果:就是删除的这个元素
names = ['貂蝉', '吕布', '董卓']
del_name = names.pop()
# 或
# del_name = names.pop(1)
print(del_name)
print(names)
☆ remove()方法
作用:删除匹配的元素
fruit = ['apple', 'banana', 'pineapple']
fruit.remove('banana')
print(fruit)
☆ clear()方法
清空列表
names = ['貂蝉', '吕布', '董卓']
# 随着故事的发展,人物都game over
names.clear()
# 打印列表
print(names)
☆ 改操作
编号 | 函数 | 作用 |
---|---|---|
1 | 列表[索引] = 修改后的值 | 修改列表中的某个元素 |
2 | reverse() | 将数据序列进行倒叙排列 |
3 | sort() | 对列表序列进行排序 |
4 | copy() | 对列表序列进行拷贝 |
list1 = ['貂蝉', '大乔', '小乔', '八戒']
# 修改列表中的元素
list1[3] = '周瑜'
print(list1)list2 = [1, 2, 3, 4, 5, 6]
list2.reverse()
print(list2)list3 = [10, 50, 20, 30, 1]
list3.sort() # 升序(从小到大)
# 或
# list3.sort(reverse=True) # 降序(从大到小)
print(list3)list4 = list3.copy()
print(list4)
4、列表的循环遍历
什么是循环遍历?答:循环遍历就是使用while或for循环对列表中的每个数据进行打印输出
while循环:
list1 = ['貂蝉', '大乔', '小乔']# 定义计数器
i = 0
# 编写循环条件
while i < len(list1):print(list1[i])# 更新计数器i += 1
for循环(个人比较推荐):
list1 = ['貂蝉', '大乔', '小乔']
for i in list1:print(i)
5、列表的嵌套
列表的嵌套:列表中又有一个列表,我们把这种情况就称之为列表嵌套
在其他编程语言中,称之为叫做二维数组或多维数组
应用场景:要存储班级一、二、三 => 三个班级学生姓名,且每个班级的学生姓名在一个列表。
classes = ['第一个班级','第二个班级','第三个班级']一班:['张三', '李四']
二班:['王五', '赵六']
三班:['田七', '孙八']把班级和学员信息合并在一起,组成一个嵌套列表
students = [['张三', '李四'],['王五', '赵六'],['田七', '孙八']]students = [x,y,z]
students[0] == ['张三', '李四']
students[0][1]
问题:嵌套后的列表,我们应该如何访问呢?
# 访问李四
print(students[0][1])
# 嵌套列表进行遍历,获取每个班级的学员信息
for i in students:print(i)
6、知识点补充
字符串:split()方法
作用:根据指定字符对字符串进行分割操作,其返回一个列表
fruit = 'apple-banana-orange'
print(fruit.split('-'))
字符串:join()方法
作用:和split()方法正好相反,其主要功能是把序列拼接为字符串
字符串.join(数据序列)
案例:把水果列表[‘apple’, ‘banana’, ‘orange’]拼接成’apple-banana-orange’
list1 = ['apple', 'banana', 'orange']
print('-'.join(list1))
作业:
1、求幸运数字6
幸运数字6(只要是6的倍数):输入任意数字,如数字8,生成nums列表,元素值为1~8,从中选取幸运数字移动到新列表lucky,打印nums与lucky。
# 第一步:定义二个空列表
nums = []
lucky = []
# 第二步:提示用户输入数字
num = int(input('请输入您要输入的数字:'))
# 第三步:生成nums列表(把1到num)所有的数据都追加到nums列表中
for i in range(1, num+1):nums.append(i)
# 第四步:对nums进行遍历操作,获取幸运数字
for i in nums:if i % 6 == 0:# 幸运数字从nums中删除nums.remove(i)# 把幸运数字写入到lucky列表中lucky.append(i)
# 第五步:打印nums和lucky
print(nums)
print(lucky)
2、把8名讲师随机分配到3个教室
列表嵌套:有3个教室[[],[],[]],8名讲师[‘A’,‘B’,‘C’,‘D’,‘E’,‘F’,‘G’,‘H’],将8名讲师随机分配到3个教室中。
分析:
思考1:我们第一间教室、第二间教室、第三间教室,怎么表示
rooms = [[],[],[]]
# 第一间教室
rooms[0]
# 第二间教室
rooms[1]
# 第三间教室
rooms[2]
思考2:我们如何一次从8名老师中,读出一个人
答:使用while或for进行遍历操作
思考3:我们如何在每次循环读取讲师的过程中,将其随机写入到某个教室?
rooms[0或1或2] = 读取的讲师信息
综合代码:
import random# 1、定义3间教室以及8名讲师
rooms = [[], [], []]
teachers = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']
# 2、对所有的讲师进行遍历操作
for teacher in teachers:# 3、生成随机数index = random.randint(0, 2)rooms[index].append(teacher)
# 3、输出每个教室的讲师信息
# print(rooms)
i = 1
for room in rooms:print(f'第{i}个教室中的讲师:{room}')i += 1
Python数据序列相关推荐
- Python数据序列(2)
今天把后半部分的数据序列补上了,假期就放一天有些疲劳,所以耽误了一天,大家见谅. 目录 一.知识点补充 二.元组的定义与使用 1.为什么需要元组 2.元组的定义 3.元组的相关操作方法 三.字典--P ...
- 三、python数据序列1-列表
一. 列表的格式 [数据1, 数据2, 数据3, 数据4......] 列表可以一次性存储多个数据,且可以为不同数据类型. 二. 列表的常用操作 列表的作用是一次性存储多个数据,程序员可以对这些数据进 ...
- python数据序列题库_Python题库系列分享一(17道)
1.1 到Python官方网站下载并安装Python解释器环境. 1.2 到Anaconda官方网站下载并安装最新的Anaconda3开发环境. 1.3 Python程序的__name__的作用 ...
- Python中的数据序列(元组、集合、字典)
Python中的数据序列 一.元组的定义与使用 1.为什么需要元组 思考:如果想要存储多个数据,但是这些数据是不能修改的数据,怎么做? 答:列表?列表可以一次性存储多个数据,但是列表中的数据允许更改. ...
- 软件测试 —— Python(三)之数据序列(容器)
其他Python知识参考:Python学习路线 目录 一.容器 二.字符串(str) 1.定义 2.下标 3.切⽚ 4.字符串的查找⽅法 find 5.字符串的替换⽅法 replace 6.字符串的拆 ...
- Python基础_第5章_Python中的数据序列
Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...
- Python中的数据序列
一.了解字符串 1.字符串的定义 字符串是 Python 中最常用的数据类型.我们一般使用引号来创建字符串.创建字符串很简单,只要为变量分配一个值即可. 案例1:使用单引号或双引号定义字符串变量 st ...
- python读取序列5之后的数据_Python 基本功: 5. 数据序列化
这篇文章紧接着前篇:多多教Python:Python 基本功: 4. 读写文件zhuanlan.zhihu.com 仔细阅读的小伙伴会发现,在基本功4 里最后的一个示例中,我们读取解析了文件中的内容 ...
- 《Python数据科学指南》——1.8 使用迭代器
本节书摘来自异步社区<Python数据科学指南>一书中的第1章,第1.8节,作者[印度] Gopi Subramanian ,方延风 刘丹 译,更多章节内容可以访问云栖社区"异步 ...
- 《Python数据科学指南》——1.17 使用映射函数
本节书摘来自异步社区<Python数据科学指南>一书中的第1章,第1.17节,作者[印度] Gopi Subramanian ,方延风 刘丹 译,更多章节内容可以访问云栖社区"异 ...
最新文章
- 网页分享插件 share.js 国外常用
- IntelliJ idea 新建项目并导入netty(转)
- WCF开发的几个频骤
- 和cnn结合_写给小白的R-CNN介绍
- 1008 Elevator (20 分)_13行代码AC
- 计算书费(信息学奥赛一本通-T1104)
- Dubbo消费者代理的调用
- .exe已停止工作_Windows 10累积更新KB4565503和KB4565483已发布
- spring如何下载源码和jar包
- linux基础之软件包管理
- Sofia-SIP辅助文档三 - 编码指南
- WEB前端-CSS精灵技术
- 最大流最小割经典例题_图割-最大流最小切割的最直白解读
- 长文预警-超详细的熊猫烧香病毒分析_01
- 友善之臂 NANO T3 运行裸机程序
- 单片机考试不挂科就等于学好单片机了吗,别太天真了
- 计算机上的波特率标准,电子信号术语-波特率9600计算单位是波特/每秒(B/s)
- win10有自带测试软件吗,Win10体检自带诊断工具在哪里打开 Win10关闭开机检测硬盘步骤...
- 科谱|5G终端移动入库、电信入库和联通入库测试用例浅析,自3GPP
- 【面试题】那你再说说线程池的核心配置参数都是干什么的?平时我们应该怎么用?
热门文章
- 【斐波那契数列——python多种写法】
- 免费指南:如何在 2022 年加强 Kubernetes 的安全性
- php获取京东列表,1018 获取京东商品列表和网址 20191018 2000-2200
- 雷军口述小米神话的背后
- 计算机毕业设计PHP酒店客房管理信息系统(源码+程序+VUE+lw+部署)
- Invalid bound statement (not found):常见报错原因解决
- 发现live555中一个小bug
- Android R 新特性变化,2021Android笔试真题
- pyinstaller 打包python qyqt5 成exe
- 群聊朋友圈四季便携无风小空调流量主小程序开发