精华内容
下载资源
问答
  • Python读取文件,读取到的是str类型的内容,如果文件中是一个tuple、list或dict,无法直接使用,需要怎么转化呢? 举个例子: b.txt的内容为[1,2,3] with open("d:\\document\\test\\b.txt") as fp: content = fp....

    Python读取文件,读取到的是str类型的内容,如果文件中是一个tuple、list或dict,无法直接使用,需要怎么转化呢?

    举个例子:
    b.txt的内容为[1,2,3]

    with open("d:\\document\\test\\b.txt") as fp:
        content = fp.read()
        print(content)
        print(type(content))
        content.append(4)
    

    在这里插入图片描述
    读出来是str类型,不能直接调用list的append()方法。
    要转化为对应的python类型,可以使用eval()方法

    with open("d:\\document\\test\\b.txt") as fp:
        content = fp.read()
        print(content)
        print(type(content))
        content = eval(content)
        content.append(4)
        print(content)
        print(type(content))
    

    在这里插入图片描述

    展开全文
  • Tuple接口有很多方法可以读取从上游组件发送过来的数据,这些方法可以分为2类。 根据下标获取数据 根据字段名获取数据 读取数据方法 public class TupleImpl extends IndifferentAccessMap implements Seqable...

     

     

    Tuple接口有很多方法可以读取从上游组件发送过来的数据,这些方法可以分为2类。

    • 根据下标获取数据
    • 根据字段名获取数据

    读取数据方法

    public class TupleImpl extends IndifferentAccessMap implements Seqable, Indexed, IMeta, Tuple {
        private List<Object> values;
        private int taskId;
        private String streamId;
        private GeneralTopologyContext context;
        private MessageId id;
        private IPersistentMap _meta = null;
        
        public TupleImpl(GeneralTopologyContext context, List<Object> values, int taskId, String streamId, MessageId id) {
            this.values = values;
            this.taskId = taskId;
            this.streamId = streamId;
            this.id = id;
            this.context = context;
            
            String componentId = context.getComponentId(taskId);
            Fields schema = context.getComponentOutputFields(componentId, streamId);
            if(values.size()!=schema.size()) {
                throw new IllegalArgumentException(
                        "Tuple created with wrong number of fields. " +
                        "Expected " + schema.size() + " fields but got " +
                        values.size() + " fields");
            }
        }
    
        public TupleImpl(GeneralTopologyContext context, List<Object> values, int taskId, String streamId) {
            this(context, values, taskId, streamId, MessageId.makeUnanchored());
        }    
        
        Long _processSampleStartTime = null;
        Long _executeSampleStartTime = null;
    	
    	//从任务的上下文【任务创建时定义好的】里获取Tuple定义的Fields
        public Fields getFields() {
            return context.getComponentOutputFields(getSourceComponent(), getSourceStreamId());
        }
    	
    	//获取到field的下标,直接在values【List】中获取对应的数据
    	public Object getValueByField(String field) {
            return values.get(fieldIndex(field));
        }
    	
    	public String getStringByField(String field) {
            return (String) values.get(fieldIndex(field));
        }
    	
    	//根据下标直接在Values[List]中获取数据
    	public Object getValue(int i) {
            return values.get(i);
        }
         
        //.......	 
    	
    }

     

    任务上下文

    public class GeneralTopologyContext implements JSONAware {
        private StormTopology _topology;
        private Map<Integer, String> _taskToComponent;
        private Map<String, List<Integer>> _componentToTasks;
        private Map<String, Map<String, Fields>> _componentToStreamToFields;
        private String _stormId;
        protected Map _stormConf;
        
        // pass in componentToSortedTasks for the case of running tons of tasks in single executor
        public GeneralTopologyContext(StormTopology topology, Map stormConf,
                Map<Integer, String> taskToComponent, Map<String, List<Integer>> componentToSortedTasks,
                Map<String, Map<String, Fields>> componentToStreamToFields, String stormId) {
            _topology = topology;
            _stormConf = stormConf;
            _taskToComponent = taskToComponent;
            _stormId = stormId;
            _componentToTasks = componentToSortedTasks;
            _componentToStreamToFields = componentToStreamToFields;
        }
    	    /**
         * Gets the declared output fields for the specified component/stream.
         */
        public Fields getComponentOutputFields(String componentId, String streamId) {
            Fields ret = _componentToStreamToFields.get(componentId).get(streamId);
            if(ret==null) {
                throw new IllegalArgumentException("No output fields defined for component:stream " + componentId + ":" + streamId);
            }
            return ret;
        }
    	
         //......	
    	
    }

     

    展开全文
  • python的tuple数据及其操作

    千次阅读 2019-05-23 00:51:24
    元组被称为只读列表,数据可被查询,但不能被修改,类似于列表的切片操作,元组写在小括号里面()元素之前用逗号隔开 对于一些不想被修改的数据,可以用元组来保存。 ...class 'tuple'> ...

    元组被称为只读列表,数据可被查询,但不能被修改,类似于列表的切片操作,元组写在小括号里面()元素之前用逗号隔开

    对于一些不想被修改的数据,可以用元组来保存。

    #  创建元组

    1)创建空元组

     

    # 创建空元组
    tup = ( )
    print (tup)
    print (type(tup)) # 使用type函数查看类型
    
    #输出结果
    ()
    <class 'tuple'>

     

    2)创建元组 (只有一个元素时,在元素后面加上逗号)

     

    # 创建元组 (只有一个元素时,在元素后面加上逗号)
    tup = (1,)  # 元组中只有一个元素时,在元素后面加上逗号,否则会被当成其他数据类型处理
    print (tup)
    print (type(tup)) # 使用type函数查看类型
    
    #输出结果
    (1,)
    <class 'tuple'>

     

     

    # 创建元组 (只有一个元素时,在元素后面加上逗号)
    tup = (1)  #不加逗号,会被当成其他数据类型处理
    print (tup)
    print (type(tup)) # 使用type函数查看类型
    
    #输出结果
    1
    <class 'int'>
    3)创建元组(多个元素)

     

    tup = (1,2,["a","b","c"],"a")
    print (tup)
    
    #输出结果
    (1, 2, ['a', 'b', 'c'], 'a')

    4) # 将列表转化为元组

     

    list_name = ["python book","Mac","bile","kindle"]
    tup = tuple(list_name) # 将列表转为元组
    print(type(list_name))  # 查看list_name类型,并将结果打印出来
    print(type(tup))    #  查看tup类型,并将结果打印出来
    print (tup) 
    
    # 输出结果
    <class 'list'>
    <class 'tuple'>
    ('python book', 'Mac', 'bile', 'kindle')

     

    # 查询 
     

    tup = (1, 2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))
    
    print ("tup[0] =",tup[0]) # 打印索引为0的元素
    #输出结果
    tup[0] = 1
    
    print ("tup[1:] =",tup[1:])   #从索引为1到最后一个元素
    #输出结果
    tup[1:] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))
    
    print ("tup[:-1] =",tup[:-1])  # 到倒第二个元素但不包含第二个
    #输出结果
    tup[:-1] = (1, 2, ['a', 'b', 'c'], 'd', 'e')
    
    print ("tup[1::1] =",tup[1::1]) # 等价于tup[1:]   从左到右一个个去取,步长为1
    #输出结果
    tup[1::1] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))
    
    print ("tup[1::2] =",tup[1::2]) #从左到右隔一个去取  步长为2
    #输出结果
    tup[1::2] = (2, 'd', ('gu', 'tang'))
    
    print ("tup[::-1]",tup[::-1])   # 反向输出 步长为1
    #输出结果
    tup[::-1] (('gu', 'tang'), 'e', 'd', ['a', 'b', 'c'], 2, 1)
    
    print ("tup[::-2]",tup[::-2])   # 反向输出 步长为2(隔一个去取))
    #输出结果
    tup[::-2] (('gu', 'tang'), 'd', 2)

     

     

    # del  删除  (元素对象不支持删除,但是可以删除整个元组变量)

     

    # del 删除元组中元素
    up = ('tang', 'guo', 'li','xiu')
    del tup[0]  #   元素对象不支持删除
    # print (tup)
    
    #输出结果
    TypeError: 'tuple' object doesn't support item deletion

     

    tup = ('tang', 'guo', 'li','xiu')
    del tup  #删除
    print (tup) # del tup ,内存已删除,在打印将提示未定义
    
    #输出结果
    NameError: name 'tup' is not defined

     

    # count 统计元素个数

    # count 统计元素个数
    tup = ('tang', 'guo', 'li','guo').count('guo')
    print (tup)
    
    #输出结果
    2

     

    #  index 返回元素的索引位置

    # index 返回元素的索引位置
    tup = ('tang', 'guo', 'li','xiu')
    print (tup.index('li')) # 返回元素'ii'的索引位置
    
    #输出结果
    2

     

    # len  计算元组中元素的个数

    # len   计算元组中元素的个数
    tup = ('tang', 'guo', 'li','xiu')
    print (len(tup))    # 计算元组长度
    
    #输出结果
    4

    #元组的遍历

    遍历方法一
    db_info = ("192.168.1.1",3306,"root","123")
    for i in range(0,len(db_info)):
        print(db_info[i])
    1
    2
    3
    遍历方法二
    db_info = ("192.168.1.1",3306,"root","123")
    for i in db_info:
        print(i)
    1
    2
    3
    运行结果:
    
    192.168.1.1
    3306
    root
    123  
    

    注意事项:

    1、当元组中一个元素时,一定要在元素后面加上逗号

    2、元组中的元素是不允许删除的,但可以使用del语句来删除整个元组

    3、元组没有列表中的增、删、改的操作,只有查的操作

    展开全文
  • storm之tuple详解

    千次阅读 2019-01-25 20:11:31
    Storm中的数据结构类型为Tuple 官方解释: “A tuple is a named of values where each value can be any type.” tuple是一个类似于列表的东西,存储的每个元素叫做field(字段),可以是任何类型。 Storm使用...

    Storm中的数据结构类型为Tuple

    官方解释:

    “A tuple is a named of values where each value can be any type.”

    tuple是一个类似于列表的东西,存储的每个元素叫做field(字段),可以是任何类型。

    Storm使用tuple作为它的数据模型, 每个tuple是一堆值,每个值都有一个名字,

    一个Tuple代表数据流中的一个基本处理单元,例如:一条cookie日志,他可以包含多个Field, 每个Field表示一个属性。

    Tuple本应该是一个Key-Value的Map, 由于各个组件之间的传递的tuple字段名称已经实现预定好了,

    所以Tuple只需要按序填入各个Value,所以就是一个Value List。

    一个没有边界、源源不断的Tuple序列就组成了Stream。

    topology里面的每个节点,必须定义它要发射的Tuple的每个字段,必须下面这个bolt定义它所发射的tuple包含两个字段,类型分别为double,triple。

    public class DoubleAndTripleBolt implements IRichBolt {
    
        private OutputCollector _collector;
    
        @Override
    
        public void prepare(Map conf, TopologyContext context, OutputCollector collector) {
    
            _collector = collector;
    
        }
    
        @Override
    
        public voide xecute(Tuple input) {
    
            int val = input.getInteger(0);
    
            _collector.emit(input,new Values(val*2, val*3));
    
            _collector.ack(input);
    
        }
    
        @Override
    
        public void cleanup() {
    
        }
    
        @Override
    
        public void declareOutputFields(OutputFieldsDeclarer declarer) {
    
            declarer.declare(newFields("double","triple"));
    
        }
    
    }
    
    // declareOutputFields方法定义要输出的字段 : [“double”, “triple”]。
    

    nextTuple() -- 这是Spout类中最重要的一个方法。发射一个Tuple到Topology都是通过这个方法来实现的。调用此方法时,storm向spout发出请求, 让spout发出元组(tuple)到输出器(ouput collector)。这种方法应该是非阻塞的,所以spout如果没有元组发出,这个方法应该返回。nextTuple、ack 和fail 都在spout任务的同一个线程中被循环调用。 当没有元组的发射时,应该让nextTuple睡眠一个很短的时间(如一毫秒),以免浪费太多的CPU。 

     

    转载自:https://blog.csdn.net/wuxintdrh/article/details/61933004

     

     

    展开全文
  • python读取Excel表格文件

    万次阅读 多人点赞 2019-07-26 10:55:52
    python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1、安装Excel读取数据的库-----xlrd 直接pip install xlrd安装xlrd库 #引入Excel库的xlrd import xlrd 2、...
  • 主要介绍了将pymysql获取到的数据类型是tuple转化为pandas方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 1.json写入txt及读取 import json json1 = open('C:/s/test.txt', encoding='utf8').read() # 读取json格式数据 # 这步很重要,一定要用loads载入json数据,这样的j1才为dict类型 j1 = json.loads(json1) 2.字典...
  • pandas中遍历dataframe的每一个元素 假如有一个需求场景需要遍历一个csv或excel中的每一个元素,判断这个元素是否含有某个关键字 那么可以用python的pandas库来实现。 方法一: pandas的dataframe有一个很好用的函数...
  • Java元组Tuple

    千次阅读 2019-09-02 17:34:04
    Java中的元组Tuple 文章目录Java中的元组Tuple1. 概念2. 使用2.1 依赖Jar包2.2 基本使用2.2.1 直接调用2.2.2 自定义工具类2.2.3 示例代码 1. 概念   Java中的Tuple是一种数据结构,可存放多个元素,每个元素的数据...
  • C++11:借助std::tuple实现CSV的读写

    千次阅读 2014-09-27 20:55:18
    C++11引入了tuple,接口也可以像python一样的方便漂亮,而且不再依赖boost库,真正做到Windows/Linux一套代码。 #ifndef _CSV_TO_TUPLES_H #define _CSV_TO_TUPLES_H #include #include #include #...
  • 取数时报错TypeError: list indices must be integers or slices, not tuple test_list[1,2] 解决方法 使用numpy构造或是使用另一种方法读取数组 import numpy as np test_list = np.array([[0] * 5 for _ in ...
  • 【可变tuple前提】组合数据类型,可以替换tuple中list中的元素 1.T = (1, 'CH', [3, 4]) tuple里面包含list,导致tuple是可变的,请修改T的定义,不改变基本数据类型的数据,使T是不可变的。 不可变的是tuple,改...
  • 想让python按照自己手动排序(时间倒序)读取文件,发现程序并不是按照文件夹里手动排出来的顺序读取的 所以需要提取文件名中的数字来排序(命名很重要!!!) 这里也涉及到了tuple元素的列表排序(lambda!!) ...
  • tuple c++

    2021-06-23 23:03:47
    文章目录1.tuple 类型2.定义与初始化tuple3.访问tuple的成员->get():返回指定成员的引用4.tuple_element:返回指定成员的类型5.关系和相等运算6.使用tuple返回多个值; 1.tuple 类型 与pair类型相似,pair类型只有两...
  • 在一些语言中,如C#或Python等,都提供了一种概念叫Tuple,即元组。在常见的面向对象的程序设计语言中,如C++,C#或Java中,都有类或结构体的概念。元组完全可以使用类或者结构体来表示,那么为什么这些语言又...
  • Python 元组详解

    千次阅读 多人点赞 2019-08-31 14:19:05
    Python 元组详解 文章目录Python 元组详解1、元组的定义2、元组的创建3、访问元组中的值4、更新元组5、删除元组元素6、基本元组...参考文档:http://www.yiibai.com/python/tuple_tuple.html 1、元组的定义 [笛卡尔...
  • C++ tuple元组的基本用法(总结)

    万次阅读 多人点赞 2019-03-12 17:02:41
    1,元组简介 tuple是一个固定大小的不同类型值的集合,是...std::tuple理论上可以有无数个任意类型的成员变量,而std::pair只能是2个成员,因此在需要保存3个及以上的数据时就需要使用tuple元组了。 tuple(元组...
  • Day1---Python数据类型 详解

    千次阅读 2019-05-23 20:18:16
    Day1--Python数据类型Python数据类型 详解1、Number(数字)1.1数值类型的赋值和计算1.2数值运算2、字符串3、列表4、元组5、set(集合)6、Dictionary(字典)7、数据类型之间...Tuple(元组) Set(集合) Dictionar...
  • Python陷阱:tuple与Nonetype

    千次阅读 2016-04-11 11:30:44
    1. 慎重使用tuple处理string生成的list 首先我要把从文件里逐行读取的字符串转变为数字列表,正确的是: >>> [float(item) for item in "1e2 to 2".split() if item not in ["to", " "]] [100.0, 2.0]接着读取到某...
  • Python内置函数

    万次阅读 多人点赞 2019-05-10 15:10:36
    Python Tuple(元组) tuple()方法 Python type() 函数 Python unichr() 函数 Python unicode() 函数 Python vars() 函数 Python xrange() 函数 Python3 zip() 函数 Python __import__() 函数 Python exec 内置语句 ...
  • 【Clickhouse】clickhouse nested tuple调研

    千次阅读 2020-05-20 16:54:24
    CREATE TABLE test.testNestedPartition ( `date` date, `params` Nested( name String, val Int32) ) ENGINE = MergeTree() PARTITION BY toYYYYMM(date) ORDER BY tuple() nested在写入时每个字段只能写入Array。...
  • Python元组(Tuple)的使用非常有效,尤其是在大批量数据插入数据库的情况下,非常高效,直接上案例 1.序言 元组(Tuple)一旦定义,就不可被修改(增,删,改),只能查看,无法使用内置函数进行新增元素以及删除元素...
  • Spark学习笔记:Spark基础

    千次阅读 多人点赞 2018-09-03 23:39:57
    Spark可以集成到HDFS,读取HDFS里的文件 先做一个测试文件data.txt,上传到HDFS上 执行WordCount 进行单步分析 可以看到一个String类型的RDD,用来存储文本信息,但这个时候并不会真正的执行 执行rdd1....
  • 基于LSTM的股票预测模型_python实现_超详细

    万次阅读 多人点赞 2019-07-05 22:25:13
    最后一个为label") # 读取文件第一行标签 with open(file_path, 'r', encoding='gb2312') as f: # with open(file_path, 'r', encoding='utf-8') as f: lines = f.readlines() # 读取所有行 data2 = lines[0] print...
  • 主要介绍了Python数据类型之Tuple元组,结合实例形式分析了Python元组类型的概念、定义、读取、连接、判断等常见操作技巧与相关注意事项,需要的朋友可以参考下
  • Scala的Tuple元素个数的限制问题

    千次阅读 2020-01-15 10:43:43
    Spark在读取文件的时候管用的手法如下: spark.read.textFile("./data/tuple") .map(_.split(",")) .map(x => (x(0), x(1), x(2), x(3), x(4), x(5), x(6), x(7), x(8), x(9), x(10), x(11), x(12), x(13)...
  • 今天为大家带来的内容是:Pandas DataFrame中的tuple元素遍历的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧!!! pandas中遍历...
  • xlrd的xldate_as_tuple

    千次阅读 2019-03-13 23:45:23
    xlrd的xldate_as_tuple方法 方法作用: 在使用xlrd读取Excel表格中的日期格式时,读出的内容和原来Excel表格中的内容不一致。读取出来的是一个浮点数。导致不能正确使用。而xldate_as_tuple方法可以很好地解决这个...
  • 本文介绍通过索引扫描获取heap tuple的TID后,如何通过TID获取heap tuple。一、先介绍两个数据结构关系二、接着介绍获取记录流程1、通过索引扫描后,得到索引记录(key...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 45,036
精华内容 18,014
关键字:

tuple读取