weixin_43716055 2022-02-24 09:03 采纳率: 50%
浏览 28
已结题

python 从string中提取片段

问题遇到的现象和发生背景

我有这样一组数据:

List = [_"0,0,0,0,000001.SZ,0,0,0,0"_ **,** _"0,0,0,0,000002.SZ,0,0,0,0"_ **,** ······]

每一个list的每一个元素,都是一个String,这个String的长度不固定(因为行情信息可能为NaN),但是每个元素的逗号数量是确定的。
我需要提取每一个元素当中的股票代码,也就是000001.SZ这样的。

我的解答思路和尝试过的方法

我尝试了用split(",")将每个元素分隔开,然后提取固定一列就好。
但这种方法太耗费时间和内存。

我想要达到的结果

请问有没有其他的方法可以提取出每个元素中的股票代码?
尽可能的快速,节省内存。

  • 写回答

3条回答 默认 最新

  • Joker-Full-stack 2022-02-24 09:28
    关注

    使用正则校验,6位数字+"."+2位字母

    # -*- coding: utf-8 -*-
    # coding:unicode_escape
    #Created on 2022年02月24日
    
    #@author: LinHuang
    #stock list
    from ast import For
    import re
    
    if __name__ == '__main__': 
        List = ["0,0,0,0,000001.SZ,0,0,0,0","0,0,0,0,000002.SZ,0,0,0,0","0,0,0,0,000003.SZ,0,0,0,0"]
        for index  in  List:
            # string = "0,0,0,0,000001.SZ,0,0,0,0"
            stock_list = re.findall(r'([0-9]{6,6}.[a-zA-Z]{2,2})', index)  # 股票
            print(stock_list)
            # 输出 
            # ['000001.SZ']
            # ['000002.SZ']
            # ['000003.SZ']
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月11日
  • 已采纳回答 3月3日
  • 创建了问题 2月24日

悬赏问题

  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求
  • ¥20 antv g6 折线边如何变为钝角
  • ¥30 如何在Matlab或Python中 设置饼图的高度
  • ¥15 nginx中的CORS策略应该如何配置
  • ¥30 信号与系统实验:采样定理分析
  • ¥100 我想找人帮我写Python 的股票分析代码,有意请加mathtao