首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将行的三元组简单地排序到列中,并避免对行的双元组执行这种操作?

如何将行的三元组简单地排序到列中,并避免对行的双元组执行这种操作?
EN

Stack Overflow用户
提问于 2021-08-13 07:14:20
回答 1查看 72关注 0票数 0

如果我的问题不是那么清楚,很抱歉。基本上,我尝试做的是通过读取文件一行(三元组)中的3个非空行来识别,并对每个三元组按列将它们排序到另一个文件中(如下所述)。一个棘手的部分是只针对三元组而不是双元组(一行中的两个非空行)执行此操作。

输入:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
line1
line2
line3
(empty line)
(empty line)
line4
line5
(empty line)
line6
line7
line8
(empty line)
(empty line)
line9
line10
(empty line)
line11
line12
line13
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
output: 
line1 line2 line3 
line6 line7 line8 
line11 line12 line13

您可以注意到,doublets可以跟在后面,也可以跟在两个空行后面。我非常感谢任何形式的帮助来解决我目前的问题,因为我是一个python新手,我被困在我的代码几个小时后尝试一些事情。谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-13 07:28:50

我建议您统计一下到目前为止读过的非空行的数量。如果您遇到一个空行,并且您知道从最后一个空行开始您只读取了两个非空行,那么您可以丢弃最后一行。但是,如果您发现已读取了三个非空行,则将它们写入新文件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
with open('input_file.txt', 'r') as input_file:
    with open('output_file.txt', 'w') as output_file:
        non_empty = 0
        previous_lines = []
        for line in input_file.readlines():
            if line == '\n':
                if non_empty == 3:  # found a triple
                    output_file.write(' '.join(previous_lines) + '\n')
                # if it's not a triple, just ignore it
                # reset the counter so we can detect the next triple
                non_empty = 0
                previous_lines = []
            else:
                # record a non-empty line for later use
                previous_lines.append(line.replace('\n', ''))
                # and important: count how many non-empty lines there are
                non_empty += 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68774713

复制
相关文章
Python中对列表和元组的切片操作
# python中对列表和元组的切片操作 # 代码 # 切片方法用于列表、元组,切片方法不能用于字典 list_tmp = [0, 1, 2, 3, 4] tuple_tmp = (4, 3, 2, 1, 0) # 列表输出 print([0, 1, 2, 3, 4][1:3]) print(list_tmp[1:3]) # 元组输出 print((4, 3, 2, 1, 0)[1:3]) print(tuple_tmp[1:3]) # 运行结果 [1, 2] [1, 2] (3, 2) (3, 2)
benym
2022/07/14
2.3K0
python 元组的列表排序
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
用户5760343
2019/07/05
1.3K0
TypeScript 中的元组类型:元组的特性、常见操作和注意事项
在 TypeScript 中,元组(Tuple)是一种特殊的数组类型,用于存储固定数量、不同类型的元素。元组与数组相似,但在元素类型和数量上有严格的限制。本文将详细介绍 TypeScript 中的元组类型,包括元组的特性、常见操作和注意事项。
网络技术联盟站
2023/07/06
7080
Python中的元组
元组(Tuple)用于将多个对象保存到一起。你可以将它们近似地看作列表,但是元组不能提供列表类能够提供给你的广泛的功能。元组的一大特征类似于字符串,它们是不可变的,也就是说,你不能编辑或更改元组。元组是通过特别指定项目来定义的,在指定项目时,你可以给它们加上括号,并在括号内部用逗号进行分隔。元组通常用于保证某一语句或某一用户定义的函数可以安全地采用一组数值,意即元组内的数值不会改变。
benym
2022/07/14
8580
python 元组列表排序
data = [(1, 'B'), (1, 'A'), (2, 'A'), (0, 'B'), (0, 'a')]
用户5760343
2019/07/07
1.1K0
元组常用操作
'''元组的方法 t.index() t.count() ''' # 元组由于不可更改元组里面的数据(第一层) # 所以元组可操作的方法比较少 t = (1,) # 单个元素,为了区分,加个逗号才叫元组 t1 = (3, 4, 'hello', [2, 3, 'ppp'], 3) print(t1[2]) n1 = t1.count(3) # count(元组里面的元素)同之前的用法,返回参数这个数据在元组中出现的次数 print(n1) # 没有的话,则返回0 n2 =
汪凡
2018/05/29
3960
Groovy中的元组
Groovy元组是有序的,不变的元素列表。Groovy有自己的groovy.lang.Tuple类。我们可以通过构造函数Tuple提供需要包含在其中的所有元素来创建一个实例Tuple。我们不能将新元素添加到Tuple实例或删除元素。我们甚至不能更改元组中的元素,因此它是完全不变的。这使得它非常适合用作需要返回多个值的方法的返回值。Groovy还提供了一个Tuple2仅可用于两个元素的元组实例的类。元素在Tuple2实例中键入。
FunTester
2020/04/03
1.6K0
python元组,文件的操作
新手刚刚开始学习python,如有写错或者写的不好的地方,请大家多多指导! python元组相加 a = (1,2) b = (3,4) a + b 元组运用乘法 (1,2) * 4  #在这里边,元组不会被当成数字来计算,而是输出4次 给字母类型的元组拍 t = ('bb,','dd','aa','cc') tm = list(t) tm.sort()    #然后输出tm t = tuple(tm) 用for的方式运算 t = (1,2,3,4,5) l = [x + 20 for x in t] 替换元组 t = (1,[2,3],4) t[1][0] = 'spa'   #t元组中第二个数值之后紧挨着的数值 python文件操作 常见的文件运算 output = open(r'd:\a.py', 'w')   创建输出文件(w是指写入) input = open('date', 'r')        创建输入文件(r是指读写) input = open('date')             与上一行想同(r是默认值) input.read()                     把整个文件读取进单一字符串 input.read(N)                    读取之后的N个字节,到一个字符串 input.readline()                 逐行读取,第一次读取第一行,第二次读取下一行 alist = input.readlines()        读取整个文件到字符串列表 output.write(as)                 写入字节字符串到文件 output.writelines(alist)         把列表内所有字符串写入文件 output.close()                   手动关闭(当文件收集完成是会替你关闭文件) output.flush()                   把输出缓冲区刷到硬盘中,但不关闭文件 anyFile.seek(N)                  修改文件位置到偏移量N处以便进行下一个操作 for line in open('data'): use line  文件迭代器一行一行的读取 open('f.txt', encoding='latin-1')   python3.0unicode文本文件(str字符串) open('f.bin', 'rb')                 python3.0二进制byte文件(bytes字符串) 实例应用 myfile = open('myfile.txt', 'w')     #创建一个myfile.txt文件,并打开进行写入 myfile.write('hello,world\n')         myfile.write('good bye'\n)           #\n表示转行 myfile.close()               #关闭文件 然后打开本地目录,看看文件内容是否一样 读取文件 myfile = open('myfile.txt')     #打开文件,默认是只读 myfile.readline()              #读取第一行 myfile.readline()              #读取下一行 把整个文件读取进单一字符串 open('myfile.txt').read()   #把所以文件一次性读取完,\n之后的表示下一行 使用打印的方式来读取 print(open('myfile.txt').read())    #这样处理的结果比较清晰,隔行分开 用for的方式来逐行读取文件 for line in open('myfile.txt'):     print(line,end='') 以二进制的方法打开文件 data = open('myfile.txt', 'rb').read()  #这样的话效果不太明显,可以创建文本写入数字开看看 data[4:8] data[0] bin(data[0])    #二进制的方式显示一个文件 文件存储 x, y, z = 43, 44, 45 s = 'spam' d = {'a': 1,'b': 2} l = [1,2,3] f = open('data.txt', 'w') f.write(s + '\n')    #直接将s插入然后转行 f.write('%s,%s,%s\n' % (x,y,z)) f.write(str(l) + '$' str(d) + '\n')    #str输出l + str输出的d 然后读取看下结果 a = open('data.txt').read() print(a) 去掉多余的行 f = open('data
py3study
2020/01/06
1K0
python元组操作
元组也是一组有序数据的组合,和列表不同是,元组只允许访问, 无法修改, 删除 及 添加.
不止于python
2023/09/05
1500
python元组操作
python中的元组
和列表一样 也可以使用数字索引提取元素中的值 然而最常用的方法是将元组解包为一组变量:
py3study
2020/01/13
1.1K0
使用 Python 按行和按列对矩阵进行排序
假设我们采用了一个输入的 MxM 矩阵。我们现在将使用嵌套的 for 循环对给定的输入矩阵进行逐行和按列排序。
很酷的站长
2023/02/22
6.1K0
使用 Python 按行和按列对矩阵进行排序
Excel按列排序和按行排序
文章背景:Excel二维表中记录着多行多列的数据,有时需要按行或按列排序,使数据更加清晰、易读。下面分别对按列排序和按行排序进行介绍。
Exploring
2022/08/10
3.2K0
Excel按列排序和按行排序
PostgreSQL技术大讲堂 - 第16讲:元组(行)结构与dml操作
PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。
用户5892232
2023/05/19
2470
PostgreSQL技术大讲堂 - 第16讲:元组(行)结构与dml操作
【Python】元组 tuple ① ( 元组 tuple 简介 | 元组不可修改 | 元组定义 | 定义只有一个元素的元组 | 元组嵌套 )
列表 List 中的数据是可修改的 , 如果有这样一种场景 , 数据生成后 , 不能修改 , 列表就不适用了 ;
韩曙亮
2023/10/11
2190
Python中的元组介绍
之前的文章中介绍了Python中的字符串的操作,接下来了解Python中的另一个数据类型:元组(tuple)
小博测试成长之路
2021/10/13
8480
Python中的元组介绍
Python编程 元组中不允许的操作
作者简介:一名在校计算机学生、每天分享Python的学习经验、和学习笔记。   座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.元组知识点  1.元组中不允许的操作(熟悉) 2.元组与列表之间的转换(掌握) ---- 前言 本章将会讲解Python编程中,元组中不允许的操作 元组与列表之间的转换 一.元组知识点  1.元组中不允许的操作(熟悉) 不允许 修改 、新增 元素。(一级) 不允许 删除 某个元素(但可以删除整个元组) ---- # tu = (
网络豆
2022/11/21
8180
Python编程 元组中不允许的操作
Python元组_python元组的定义方式
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/164967.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/19
7100
dplyr中的行操作
在tidyverse中,整洁数据一般都是每一行是一个观测,每一列是一个变量,基本上所有操作都是基于整洁的数据进行的,都是对某列做什么操作。但有时候我们也需要对某行做一些操作,dplyr中现在提供了rowwise()函数快速执行对行的操作。
医学和生信笔记
2022/11/15
1.3K0
python之元组的基本操作
  Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。下面我们来介绍一下python元组的基本操作。
jiankang666
2022/06/22
4940
python之元组的基本操作
点击加载更多

相似问题

排序元组、行和列-智

14

如何将选定的行存储到元组中?

13

对包含元组的元组进行排序

45

用元组对元组进行排序,在所有键中对元组进行排序。

26

简单元组操作

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文