【Python】列表相关运用

别再只看K线了!用Python自制筹码分布图,可视化Winner函数帮你判断支撑压力 本文详细介绍了如何用Python自制筹码分布图,通过数据清洗、算法实现和动态可视化,帮助投资者更准确地判断股票支撑压力位。文章重点讲解了Winner函数的应用,结合筹码分布与交易策略,提升交易决策的精准度。 阅读详情

Python中,组合数据类型:序列(字符串、列表、元组)、字典、集合

# 冒泡排序

ls=[3,5,4,9,6]
for i in range(4):
    for j in range(i+1,5):
        if ls[i]<ls[j]:
            ls[i],ls[j]=ls[j],ls[i]
print(ls)# [9, 6, 5, 4, 3]

# 计算天数

import time
date = time.localtime()      # 获取当前日期时间
print(date)
year,month,day = date[:3]  # 获取年月日
day_month=[31,28,31,30,31,30,31,31,30,31,30,31]
if year%400==0 or (year % 4==0 and year %100!=0):
    day_month[1] = 29
if month==1:
    print('今天是今年的第',day,end = "天")
else:
    print('今天是今年的第',(sum(day_month[:month - 1])+day),end = "天")

# 将列表中相同的元素只保留一个

方法一 新建列表,查重

list1 = list('bcdbcaaaaaaa')
list2 = list1.copy()
list1 = []
for i in list2:
    if i not in list1:# 若list1中不含list2元素则引进
        list1.append(i)
print(list1)

方法二 循环删除

list1 = ['b','c','d','b','c','a','a']
for i in list1.copy():
    c= list1.count(i)# 判断出现次数
    if c>1:
        for j in range(c-1):# 判断需删除次数
            list1.remove(i)# 删同
print(a)

# 寻找给定序列中相差最小的两个数字

方法一 通过最小差索引和删除次数 判断减数与被减数

seq = [12,56,776,43,123,456,78,77,90]
seq.sort(reverse=True)# 降序
flag = 1
temp = 0
ls = list(map(lambda x,y:x - y,seq[:-1],seq[1:]))# 降序相错作差构成新列表
Min = min(ls)# 记录最小差
Index = ls.index(Min)
print("相差最小的数字为:",seq[Index],seq[Index+1],end = '\n')
while flag:
    del ls[ls.index(Min)]# 删除第一个最小差
    temp = temp + 1# 记删除次数
    if Min == min(ls):# 若能找到新的最小差与第一个相等
        Index = ls.index(Min) + temp
        print("相差最小的数字为:",seq[Index],seq[Index+1],end = '\n')
    else:
        flag = 0
print("相差:",Min)

方法二 通过最小差次数删同 通过索引 判断减数与被减数

seq = [12,56,776,43,74,75,76,77,90]
seq.sort(reverse=True)# 降序
ls = list(map(lambda x,y:x - y,seq[:-1],seq[1:]))# 降序相错作差构成新列表
Min = min(ls)# 记录最小差
Index = ls.index(Min)
print("相差最小的数字为:",seq[Index],seq[Index+1],end = '\n')
num = ls.count(Min)# 判断出现次数
if num > 1:
    for j in range(1,num):# 判断需删除次数
        ls.remove(Min)# 删同
        Index = ls.index(Min)+j
        print("相差最小的数字为:",seq[Index],seq[Index+1],end = '\n')
print("相差:",Min)

# 变量赋值、切片复制、深度复制、浅复制的区别

import copy
s1 = [4,5,6]
s2=s1
s2[1] = "nk"
# s2只复制s1地址,改变一个另一个也改变
print(s1,s2)# [4, 'nk', 6] [4, 'nk', 6]
s3 = s1[1:3]
s3[1] = "cn"
# 切片复制后s3s1地址不同,可以单独修改
print(s1,s3)# [4, 'nk', 6] ['nk', 'cn']
s4 = copy.deepcopy(s1)
s4[1] = 333
# 深度复制后s4s1地址不同,可以单独修改
print(s1,s4)# [4, 'nk', 6] [4, 333, 6]
s5 = [4,[5,6]]
s6 = s5[1:3]
s5[1][0] = "cn"
# 切片复制后s5s6地址不同但列表内元素值的存储地址相同,若改变列表内的列表元素另一个也改变
print(s5,s6)# [4, ['cn', 6]] [['cn', 6]]
s7 = copy.deepcopy(s5)
s7[1] = "nk"
# 深度复制后s5s7地址不同,可以单独修改
print(s5,s7)# [4, ['cn', 6]] [4, 'nk']

# 输入一个英语段落,仅包括单词及空格,统计其中每个单词出现的次数,并输出结果

方法一 先降序排列 通过重复次数判断下一单词位置 并捕获索引错误 

paragraph = input("输入:")
paragraph = paragraph.split(" ")
paragraph.sort(reverse=True)# 降序排列
num = paragraph.count(paragraph[0])
Index = num
print(paragraph[0],"出现次数:",num)
flag = 1
while flag:
    try:
        num = paragraph.count(paragraph[Index])
        print(paragraph[Index],"出现次数:",num)
        Index = Index + num# 根据重复次数判断下一个不同单词的索引
    except IndexError:# 若索引超出则跳出循环
        flag = 0

 方法二 先复制 删同 再找出现次数,避免边删边for的相互影响

paragraph = input("输入:")
paragraph = paragraph.split(" ")
temp = []
for i in paragraph:
    if i not in temp:
        temp.append(i)# 先删同
for i in temp:
    num = paragraph.count(i)# 再找出现次数
print(i,"出现次数:",num)

一些不咋记得的函数

# 降序排列
print(sorted([1, 2, 3], reverse=True)
# 颠倒
list(reversed([1, 2, 3]))
# 已知列表 x = [1, 2],那么表达式 list(enumerate(x)) 的值为
[(0, 1), (1, 2)]# 索引和元素值构成元组
# 表达式 list(zip([1,2], [3,4])) 的值为
[(1, 3), (2, 4)]# 压缩成元组格式
# 表达式 list(map(list,zip(*[[1, 2, 3], [4, 5, 6]]))) 的值为
[[1, 4], [2, 5], [3, 6]]# 压缩后换成列表格式

MicroCap声学仿真介绍(六)-入耳式耳机仿真 从上图可以看出,后腔开了泄声孔后,振膜的最大位移从4.8um提升到了10um,振膜位移增加了一倍。在实际应用中,一般耳机的前腔和后腔都需要开泄声孔,开孔的大小和调音网布的阻尼需要根据客户的要求以及仿真的结果进行权衡选择。接着在主界面放置电阻、电感、电容,电阻值为Rms,电感值为Mms,电容值为Cms,如下图。假设后腔泄声孔的直径为1.2mm,宽度为0.3mm,对应调音网的阻抗为5.5e8欧姆。假设前腔泄声孔的直径为1.2mm,宽度为0.3mm,对应调音网的阻抗为5.5e8欧姆。 阅读详情

相关推荐

STM32F103串口接收中断:USART_IT_IDLE和USART_IT_RXNE区别

2:如果是大于1个byte的数据,在不用DMA的情况下,同时使能USART_IT_RXNE,USART_IT_IDLE中断,每收到一个字节在中断中把数据存到缓存中,待收到USART_IT_IDLE中断时,收完整帧数据,然后再解析处理数据。比如:如上图在初始化时,同时开启了两个中断,如果传送8个字节的数据,就会产生8个USART_IT_RXNE,和1个USART_IT_IDLE中断。(如果接收到数据,在1个byte的时间内,没有收到新数据,就认为是数据传送完成,产生空闲USART_IT_IDLE中断)

weixin_66299220的博客 2401

python解题思路公共子序列a[i=b[j_2021-01-14 Python百日打卡学习自【夸可编程】

'''给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和例子maxSubArray([-2,1,-3,4,-1,2,1,-5,4]) -> 6假设输入的数组元素为整数tips枚举所有子数组,检查每个子数组和你能想到更优的解法吗?(利用动态规划思想)动态规划问题,具体解法都是通过一个二维数组来存储中间环节的最优解,然后求二维数组的最大值或者最后...

weixin_42569429的博客 375

别再只看pLDDT了!AlphaFold预测结果解读保姆级指南:pLDDT、PAE、pTM、ipTM到底怎么看?

本文详细解析了AlphaFold预测结果中的关键指标pLDDT、PAE、pTM和ipTM,帮助用户从单一依赖pLDDT进阶到全面理解蛋白质结构预测。通过实际案例和技巧,指导如何正确解读这些指标,避免常见错误,并提供了从预测到发表的实用建议。

weixin_29100399的博客 356

Python 常用排序

Python 常见排序(选择排序、冒泡法排序、插入排序、计数排序(桶排序))原理思路以及具体代码讲解。

YUJIAOZHU666的博客 392

【Boost5】Boost变换器的输入电容

节点的电流有3个,一个是来自电源输入的,由于我们把Vin看成理想电源以及线路的电感的存在,它可以近似看作是恒定的电流源Iin,一个是流向输入电容Cin的电流Icin,另外一个节点是电感L电流IL。电容电流波形在整个开关周期内的平均值为0,充电和放电在一个周期中各占1/2,在图中充电部分面积和放电部分面积相等,那么在充电或放电的电荷量Q=I*t,从图中可以看出,在一个周期内电容电流变化量是ΔIL,那在电容在充电1/2T周期中电流的变化量是1/2ΔIL。输入电容上的ESR也会随着电流变化,影响输入电压的变化。

qq_43416206的博客 3349

TexGen模型导出到ABAQUS的inp文件:如何快速修改纱线材料属性(避坑指南)

本文针对TexGen模型导出到ABAQUS的inp文件后纱线材料属性缺失或错误的问题,提供了高效的解决方案。文章详细解析了inp文件结构,指导用户如何手动定位并修改纱线材料属性,并提供了可批量处理的Python脚本,帮助用户快速、精准地完成材料参数赋值,有效提升复合材料仿真工作效率。

ice55的博客 603

【linux】ls[1]学习

1.认识              ★全称 : list directory contents   列出文件夹中的内容              ★描述 : [1] 为 User Commands  ,用来列出文件信息(默认是当前文件夹),默认是 以字母顺序排序 2.命令              ★语法 :  ls [option]... [file]...             

lihuapiao的专栏 856

SAP PS模块预算控制实战:为什么你的采购订单金额和预算占用对不上?

本文深入解析SAP PS模块中采购订单金额与预算占用偏差的常见问题,揭示承诺成本与实际成本的分流处理机制。通过实战案例和六步定位法,提供发票拆分、跨年度预算等典型场景的解决方案,并分享预防性配置框架和最佳实践,帮助企业有效控制预算偏差。

weixin_30363981的博客 516

python数据类型

查找该字符串,返回对应索引(下标),如果没有则返回-1。列表与元组最大的区别就是列表可变,而元组不可变。将 字符串A 替换为 字符串B 替换次数为C次。与find基本一样,唯一不同的是,超找不到报错。有参数: 以"参数"来切割,可以设置切几刀。step 步长(步长可以是负数)语法:序列[start:end]有参数:删除字符串两边”参数“查找该字串在字符串中出现的次数。从头到尾,依次访问到每一个。无参数:删除字符串两边空白。唯一性,所有的键都是唯一的。无参数: 默认以空格切割。元组不可更改,所以只能查。

m0_72829928的博客 409

把财务与管理会计装进一张表:读懂 S/4HANA 的 ACDOCA

别慌,这反而是设计所需。只是大量历史上为汇总、加速而建的索引与汇总表被淘汰或改造,很多被兼容视图 compatibility views 替代,通过视图去 ACDOCA 或 ACDOCT 取数,从而保证老代码还能 SELECT 到数据,但失去写权限。它把原来分散在多张表里的信息整合到一起,例如总账、固定资产、物料账、盈利能力分析 CO-PA、成本控制等维度,发布过的资料多次强调这一点。其二,查询必须带上高选择性的条件,尤其是 RLDNR、RBUKRS、GJAHR 这三个维度,能大幅降低列存扫描的代价。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 950

Oracle EBS Interface/API(29) - AP发票API

续上编文章《Oracle EBS Interface/API(28) - 客制化开发AP付款API》背景,介绍如调用官方提供标准AP发票API调用 用户界面 Invoices(Payables Manager->Invoices->Entry->Invoices) Open Interface Invoices(Payables Manager->Invoices->Entry->Open Interface Invoices) 快速参考 参考点 内容.

陈显平的专栏-Oracle EBS 1151

Python:列表 【全用法】

python中有列表、元组、集合、字典这四种可以存放多个数据元素的集合,他们在总体功能上都起着存放数据的作用,却都有着各自的特点。本片文章中我们会对列表的用法做详细说明。 演示环境: python3.6 pycharm中的python3.6 第一部分:列表(list): 列表(list)用来存储不同的数据类型,使用 [ ] 例如: service = ['http','ssh','ftp'] ...

dddxxy的博客 13万+

PyTorch实战(7)——循环神经网络

本节介绍了循环神经网络 (RNN) 及其在序列数据处理中的应用。首先对比了卷积神经网络 (CNN) 与 RNN 的差异,指出 RNN 通过循环连接建模时序依赖关系。随后详细梳理了 RNN 的发展历程,包括基础 RNN、双向 RNN、LSTM、GRU 等变体的结构特点及改进动机,其中 LSTM 通过门控机制解决长程依赖问题,GRU 则进一步简化结构。接着通过 IMDb 情感分析实战,演示了如何使用 PyTorch 实现文本预处理、RNN 模型构建及训练评估流程,最后探讨了注意力机制如何提升 RNN 性能。

盼小辉丶的博客 1万+

python 判断两个列表间是否具有包含关系以及获取子列表在父列表中的索引

代码 import operator def get_sub_list_index(parent_list, sub_list): length_sub_list = len(sub_list) index_list = [] counter = 0 while True: tem_list = parent_list[counter:counter + length_sub_list] if operator.eq(sub_list, tem

小白 1382

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

第十一课、python中列表推导式创建列表

直接上代码 nums = [i for i in range(10)] num = [(a,b)for a in range(5,9) for b in range(3,7)] #列表中是元祖 print(num) print(nums) # 等同于下面这个公式 nums = [] for i in range(10) : nums.append(i) # 下面的自己理解 x = [j for j in range(10) if j % 2 == 0] print(x) y = [i for i

cyz141001的博客 810

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Python中遍历列表,循环嵌套

1.遍历列表中的元素:用for(操作元素)和while(操作索引)实现 #将列表中的所有元素打印出来 #for循环主要结合成员运算符使用,此时只能操作元素 list1= ["and",567,"abc"] for element in list1: print(element) else: print("over") #用while实现,操作的是列表索引 num = 0 ...

qq_38358499的博客 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Python列表

列表(list) 1. 什么是列表(lists) 1)列表长什么样子: 列表是容器数据类型(序列);将[]作为容器的标志,里面多个元素用逗号隔开: [元素1, 元素2, 元素3,…] 2)列表的特点:列表是可变的(元素的个数、值和顺序可变) - 增、删、改、查 3) 列表队元素的要求: 没有要求(不管什么类型的数据都可以作为列表的元素) 容器的基本特征: 一个容器型的数据可以同时保存多个其他数据 元素: 容器中每一个独立的数据就是一个元素 len(列表) - 获取列表中元素的个数 # 列表可

Start9186的博客 436

python基础第六节——列表

文章目录一、列表的运用场景二、列表的格式三、列表的使用1.列表推导式2.创建列表四、访问列表五、列表的增,删,改,查1、修改元素2、添加元素2.2在列表中插入元素2.3拼接列表3.1使用del删除元素3.2使用pop()删除元素3.3根据值删除元素4、根据元素获取索引六、排序1、使用sort()对列表进行永久排序2、使用sorted()对列表进行临时排序3、逆打印列表七、确定列表的长度八、统计指定元素在列表中出现的个数九、切片十、判断是否存在10.1 in10.2 not in十一、作业 一、列表的运用场景

qq_54010706的博客 1364

python列表索引

dearweideng的博客 3519

python学习(列表下)

append、extend 两者都表示添加,但还是存在很大的区别: 相同点: 都是在列表 list 的末尾添加元素;添加元素时,都是以容器的方式添加;不同之处: 虽然两者都是以容器的形式添加,但append 添加是将容器看作整体来进行添加,但 extend 是将容器打碎后添加(加入的只是元素)list1.extend([100,200]) # 添加后拥有5个元素 [10, 20, 30, 100, 200]

qq_53087693的博客 640

python列表删除元素的方法,python列表取出指定元素

用[]作为边界逗号作为分隔符,可容纳所有对象的数据类型,如:[],[1, "a", 5, 'cd']等等,是可迭代的数据类型,可以被修改。我们可以使用下面2种方式来定义列表python工程师证书怎么考。第一种:直接使用[]在一个列表中我们可以放入任何的python对象,包括列表本身。在[]中我们放入了一个整型1,一个浮点型1.1,一个字符串'abc'。如此就形成一个拥有3个元素的列表list1,1为list1的第一个元素,1.1为list1的第二个元素,'abc'为list1的第三个元素。

M3666789的博客 984

python中列表概念,Python基本数据类型——List(列表)

1 序列1.1 序列的基本概念序列是Python中最基本的一种数据结构。序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置(索引)并且序列中的数据会按照添加的顺序来分配索引。数据结构是指计算机中数据存储的方式1.2 序列的分类可变序列(序列中的元素可以改变) 例如:列表(list),字典(dict)不可变序列(序列中的元素不可以改变) 例如:元组(tuple),字符串(str)列表...

weixin_42191440的博客 2587

python--列表的常见几种方法

weixin_39093642的博客 161

python 列表分组

python 列表分组

jacke121的专栏 217

python中reduce函数的运用_python 中 reduce 函数的使用

reduce()函数也是Python内置的一个高阶函数。reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值。例如,编写一个f函数,接收x和y,返回x和y的和:deff(x, y):returnx+y调用reduce(f,...

weixin_28934777的博客 827

列表学习总结

列表的含义以及基本使用方法

qq_58082404的博客 298
上一篇: 【Python】格式化输出、猜随机数、ASCII码加密、加减乘除测试题
下一篇: 【Python】字典相关
*Min*
博客等级 码龄5年 13粉丝 27原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

*Min*

写的不好多多包涵~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值