python自学笔记2 数据类型

字符串操作

f字符串:

python 复制代码
for index, char in enumerate(greeting_str):
      print(f"字符:{char}, 索引:{index}")

f字符串可以方便的在字符串中插入变量

字符串切片

指定步长:

python 复制代码
print(greeting_str[::2])

指定步长为2的取字符串

指定步长为-1的取字符串

python 复制代码
print(greeting_str[::-1])

将数据插入字符串

使用%

python 复制代码
str_2 = '%s has a height of %.3f cm.' %(name, height)
print(str_2)

使用str.format()

python 复制代码
str_3 = '{} has a height of {:.3f} cm.'.format(name,height)
print(str_3)

使用f-string(如上述)

常用占位符



列表操作

创建混合列表

python 复制代码
my_list = [1,  1.0, '1', True, [1, 1.0, '1'], {1}, {1:1.0}]

列表的切片操作

如字符串切片操作

插入操作,在列表尾部插入元素

python 复制代码
my_list.append('tail')

通过索引删除

python 复制代码
del my_list[-1]

删除某个元素

python 复制代码
my_list.remove('123')

判断一个元素是否在列表中

python 复制代码
if '123' in my_list:
	print("Yes")
else:
	print("No")

列表翻转

python 复制代码
my_list.reverse()

将列表用所有字符串连接,连接符为下滑线

python 复制代码
letters = ['j', 'a', 'm', 'e',  's']
word = '_'.join(letters)

打包与拆包

python 复制代码
list_0 = [0, 1, 2, 3, 4, ,5,  6, 7, 8]

'''第一个元素给first, 第二个元素给second, 最后一个元素给last, 剩余的打包'''
first, second,  *list_rest, last = list_0

#丢弃了最后一个,其他同上
first, second,  *list_rest, - = list_0

#利用打包和拆包合并
list1 = [1, 2, 3, 4, 5]
list2 = [6, 7, 8]

combined_list = [*list1, *list2]

用星号 * 拆包、打包也适用于元组和字符串,请大家自行学习代码 10。注意, 元组和字符串打包之后的结果为列表。

python 复制代码
string_0 = 'abcd'
first, *str_rest, last = string_0
#str_rest结果为列表

tuple_0 = (1,2,3,4)
first, *tuple_rest, last = tuple_0
#tuple_rest结果为列表

视图与拷贝

如果用 = 直接赋值,是非拷贝方法,结果是产生一个视图 (view)。 这两个列表是等价的,修改其中任何 (原始列表、视图) 一个列表都会影响到另一个列表。

浅拷贝与深拷贝

浅复制 (shallow copy) 只对 list 的第一层元素完成拷贝,深层元素还是和原 list 共用。

深复制 (deep copy) 是创建一个完全独立的列表对象,该对象中的元素与原始列表中的元素是不同的对象。

深拷贝要用copy.deepcopy(lsit1)

元组

比起列表,元组创建出来后不能有任何修改

使用()创建

集合

添加元素

python 复制代码
number_set = {1, 2, 3, 4, 5}
word_set = set({"apple", "banana", "orange"})
#使用add方式进行添加
fruit_set = set(["apple", "banana"])
#添加单个元素
fruit_set.add("orange")
#添加多个元素
fruit_set.update(["grape", "kiwi"])

删除元素

python 复制代码
#删除元素
fruit_set.remove("banana")  	#删除元素没有就会报错
fruit_set.discard("orange")		#删除元素没有也不会报错

逻辑运算

python 复制代码
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
set3 = set1 & set2 #交集
set4 = set1 | set2 #并集
set5 = set1 - set2 #差集

字典

python 复制代码
person = {'name': 'James', 'age': 88, 'gender': 'male'}

创建字典

python 复制代码
#创建字典
fruits = dict(apple = 88, banana = 888, cherry=8888)

修改字典

python 复制代码
person['age'] = 28

添加键值对

python 复制代码
person['city'] = 'Toronto'

删除键值对

python 复制代码
del person['gender']

矩阵与向量

相关推荐
好吃的肘子几秒前
MongoDB 应用实战
大数据·开发语言·数据库·算法·mongodb·全文检索
ghost1433 分钟前
C#学习第23天:面向对象设计模式
开发语言·学习·设计模式·c#
小白学大数据4 分钟前
Scrapy框架下地图爬虫的进度监控与优化策略
开发语言·爬虫·python·scrapy·数据分析
浊酒南街4 分钟前
TensorFlow之微分求导
人工智能·python·tensorflow
立秋678910 分钟前
用Python绘制梦幻星空
开发语言·python·pygame
alpszero22 分钟前
YOLO11解决方案之对象裁剪探索
人工智能·python·计算机视觉·yolo11
明月看潮生30 分钟前
青少年编程与数学 02-019 Rust 编程基础 16课题、包、单元包及模块
开发语言·青少年编程·rust·编程与数学
后青春期的诗go35 分钟前
基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(二)
开发语言·后端·rust·rocket框架
白云千载尽1 小时前
相机、雷达标定工具,以及雷达自动标定的思路
python·自动驾驶·ros
咕噜咕噜啦啦1 小时前
python爬虫实战训练
爬虫·python