python细节随笔

1:python 二维数组的创建方式

下面是创建三行两列的数组 且数组的初始元素是0

0 for i in range(2) 表示的是创建两列, 后面的 for j in range(3) 表示 这样的 我要3个 也就是3行了

python 复制代码
a = [[0 for i in range(2)] for j in range(3)]
print(a)

2:数组里面的 a.index(x) 表示的是数组a里面,第一次出现x的下表, 若不存在则会报异常

python 复制代码
fruits = ['apple', 'banana', 'orange', 'apple']

# 查找'apple'第一次出现的索引
index = fruits.index('apple')
print(index)  # 输出: 0

# 从指定位置开始查找'apple'第一次出现的索引
index = fruits.index('apple', 1)
print(index)  # 输出: 3

3:列表推导式:

python 复制代码
result = [i for i in range(10) if i > 8]
print(result)  # 输出: [9]

4:字典推导式:

这行代码使用了字典推导式来生成一个字典

python 复制代码
x = {i: str(i+3) for i in range(3)}
print(x)  # 输出: {0: '3', 1: '4', 2: '5'}

5:python里面的zip函数:
zip() 函数用于将多个可迭代对象(例如列表、元组等)中对应的元素打包成一个个元组,然后返回这些元组组成的对象。zip() 函数会以最短的输入可迭代对象的长度为准,超出部分将被忽略。

python 复制代码
# 定义两个列表
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']

# 使用 zip() 函数打包成元组
zipped = zip(list1, list2)

# 打印结果
print(list(zipped))  # 输出: [(1, 'a'), (2, 'b'), (3, 'c')]

6:enumerate函数的用法

enumerate() 函数用于同时遍历可迭代对象(如列表、元组、字符串等)的索引元素:

获取每个元素的下标(index) 以及每个下标对应的元素值(value)

python 复制代码
# 定义一个列表
my_list = ['apple', 'banana', 'orange']

# 使用 enumerate() 遍历列表并获取索引和元素
for index, value in enumerate(my_list):
    print(f'Index: {index}, Value: {value}')
# 输出的结果是:
# Index: 0, Value: apple
# Index: 1, Value: banana
# Index: 2, Value: orange

7: replace() 注意replace()方法 并不会修改原来的字符串,只会去返回一个新的字符串

python 复制代码
w = "93python22"
for i in w:
    if "0" <= i <= "9":
        continue
    else:
        w.replace(i, "")

print(w)  # 93python22

8:**for 和 remove()**的使用:

java 复制代码
a = ['1', '2', '2', '3']
for i in a:
    if i == '2':
        a.remove(i)

print(a)  
# 输出的结果 是 ['1', '2', '3']

for 循环遍历列表时,会先获取列表的长度,然后按照索引从前往后依次访问列表中的元素。而当我们对列表进行删除操作时,会改变列表的长度和索引,可能导致一些元素被跳过或重复访问。

在上面的代码中,我们在遍历列表 a 的过程中,对列表进行了修改(删除了元素 '2'),导致下一次循环时列表的长度和索引发生了变化。具体来说,第一个 '2' 被正常访问并删除,但是第二个 '2' 却被跳过了(因为它的索引变成了 2),最终的结果是输出了未被删除的元素 '1'、'2' 和 '3'。

当我们想删除掉a里面的2的时候 我们可以这么写:

java 复制代码
a = ['1', '2', '1', '3', '2', '2']
a = [i for i in a if i != '2']
print(a)
# 输出的结果是:
# ['1', '1', '3']

9: 保留指定小数点位数:round("结果", "保留小数点的位数")

python 复制代码
round(2.54 * value, 2)

10:小数点转换为字符串类型的 用的是str() 但是会省略多余的0 这个是致命的

因此我们可以用 "{:.2f}".format(num) 这个是直接转换为字符串

python 复制代码
num = 12.70
print("{:.2f}".format(num))
#  输出的结果是 12.70
相关推荐
qwerasda1238521 小时前
基于Faster-RCNN_R50_Caffe_FPN_1x_COCO的绿豆计数与识别系统深度学习Python代码实现
python·深度学习·caffe
程序员:钧念8 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
数据与后端架构提升之路9 小时前
TeleTron 源码揭秘:如何用适配器模式“无缝魔改” Megatron-Core?
人工智能·python·适配器模式
hele_two10 小时前
快速幂算法
c++·python·算法
浩瀚地学10 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
l1t10 小时前
利用DeepSeek将python DLX求解数独程序格式化并改成3.x版本
开发语言·python·算法·数独
JeffDingAI10 小时前
【Datawhale学习笔记】深入大模型架构
笔记·学习
暖阳之下11 小时前
学习周报三十一
学习
Master_oid12 小时前
机器学习29:增强式学习(Deep Reinforcement Learning)④
人工智能·学习·机器学习
Cemtery11612 小时前
Day26 常见的降维算法
人工智能·python·算法·机器学习