精华内容
下载资源
问答
  • python和shell(awk命令) 可以实现直接读取文件某一行,按行号进行读取 。并可以精准的取得该行的某个字段,这个有点类似于x轴、y轴定位某个点的操作。一、awk取某行某值awk 可以设置条件来输出文件中m行到n行...

    python和shell(awk命令) 可以实现直接读取文件的某一行,按行号进行读取 。并可以精准的取得该行的某个字段,这个有点类似于x轴、y轴定位某个点的操作。

    一、awk取某行某列值

    awk 可以设置条件来输出文件中m行到n行中每行的指定的k字段,使用格式如下:awk 'NR==m,NR==n {print $k}' path/filename

    m,n,k表示实在的数值。如果要用变量来表示m,n的值,则变量需要用单引号将其引起来。NR,{print }是awk命令在此用法下的规定字段;path/filename表示读取文件的路径及文件名。这里指定了两行,如果只指定一行,可以这样写:awk 'NR==m {print $k}' path/filename

    二、python取某行某列

    标准库提供的linecache模块提供具体取某一行的方法:

    import linecache

    theline = linecache.getline(filepath, line_number)

    取到相关的行以后,再对theline做split切分成list,再对list索引取值就行了。如theline.split()[2] 。

    三、linecache模块的用法

    即然,提到了linecache模块,这里就列下linecache的其他方法。linecache模块允许从任何文件里得到任何的行,并且使用缓存进行优化,常见的情况是从单个文件读取多行。

    linecache.getlines(filename)从名为filename的文件中得到全部内容,输出为列表格式,以文件每行为列表中的一个元素,并以linenum-1为元素在列表中的位置存储

    linecache.getline(filename,lineno)从名为filename的文件中得到第lineno行。这个函数从不会抛出一个异常–产生错误时它将返回”(换行符将包含在找到的行里)。如果文件没有找到,这个函数将会在sys.path搜索。

    linecache.clearcache()清除缓存。如果你不再需要先前从getline()中得到的行

    linecache.checkcache(filename)检查缓存的有效性。如果在缓存中的文件在硬盘上发生了变化,并且你需要更新版本,使用这个函数。如果省略filename,将检查缓存里的所有条目。

    linecache.updatecache(filename)更新文件名为filename的缓存。如果filename文件更新了,使用这个函数可以更新linecache.getlines(filename)返回的列表。

    示例:

    # cat a.txt

    1a

    2b

    3c

    4d

    5e

    6f

    7g

    1、获取a.txt文件的内容

    >>> a=linecache.getlines('a.txt')

    >>> a

    ['1a ', '2b ', '3c ', '4d ', '5e ', '6f ', '7g ']

    2、获取a.txt文件中第1-4行的内容

    >>> a=linecache.getlines('a.txt')[0:4]

    >>> a

    ['1a ', '2b ', '3c ', '4d ']

    3、获取a.txt文件中第4行的内容

    >>> a=linecache.getline('a.txt',4)

    >>> a

    '4d '

    注意:

    使用linecache.getlines('a.txt')打开文件的内容之后,如果a.txt文件发生了改变,如你再次用linecache.getlines获取的内容,不是文件的最新内容,还是之前的内容,此时有两种方法:

    1、使用linecache.checkcache(filename)来更新文件在硬盘上的缓存,然后在执行linecache.getlines('a.txt')就可以获取到a.txt的最新内容;

    2、直接使用linecache.updatecache('a.txt'),即可获取最新的a.txt的最新内容。

    读取文件之后你不需要使用文件的缓存时需要在最后清理一下缓存,使linecache.clearcache()清理缓存,释放缓存。

    展开全文
  • 、摘要在这篇文章中:介绍了使用xlrd 模块,读取指定坐标的单元格,以及循环整个.../usr/bin/envpython3#coding:utf-8importxlrd#打开excel文件,创建个workbook对象,book对象也就是fruits.xlsx文件,表含有sh...

    一、摘要

    在这篇文章中:

    介绍了使用 xlrd 模块,读取指定坐标的单元格,以及循环整个表格。

    还没有介绍如何读取指定的列。

    二、举例

    目前有一张水果报价表,内容如下:

    需要提取品名和成本价,完整代码如下:#!/usr/bin/env python3

    # coding: utf-8

    import xlrd

    # 打开excel文件,创建一个workbook对象,book对象也就是fruits.xlsx文件,表含有sheet名

    rbook = xlrd.open_workbook('test.xlsx')

    # sheets方法返回对象列表,[]

    rbook.sheets()

    # xls默认有3个工作簿,Sheet1,Sheet2,Sheet3

    rsheet = rbook.sheet_by_index(0)  # 取第一个工作簿

    # 循环工作簿的所有行

    for row in rsheet.get_rows():

    product_column = row[1]  # 品名所在的列

    product_value = product_column.value  # 项目名

    if product_value != '品名':  # 排除第一行

    price_column = row[4]  # 价格所在的列

    price_value = price_column.value

    # 打印

    print("品名", product_value, "价格", price_value)

    执行输出:品名 陕西水晶富士 价格 4.1

    品名 雪梨 价格 1.6

    品名 无籽西瓜 价格 1.7

    展开全文
  • python读取csv文件某一列或某几列

    万次阅读 2019-08-08 11:25:00
    python读取csv文件某一列或某几列 import csvimport pandas as pdwith open('D:\Data\新建文件夹\list3.2.csv','r') as csvfile: reader = csv.reader(csvfile) column1 = [row[1]for row in reader] print...

    python读取csv文件的某一列或某几列

     
    import csv
    import pandas as pd

    with open('D:\Data\新建文件夹\list3.2.csv','r') as csvfile:
    reader = csv.reader(csvfile)
    column1 = [row[1]for row in reader]
    print(column1)


    # 下面是按照列属性读取的
    d = pd.read_csv('D:\Data\新建文件夹\list3.2.csv', usecols=['case', 'roi', 'eq. diam.','x loc.','y loc.','slice no.'])
    print(d)

    d = pd.read_csv('D:\Data\新建文件夹\list3.2.csv', usecols=['case', 'roi', 'eq. diam.','x loc.','y loc.','slice no.'],
    nrows=10)
    # 这是表示读取前10行

    转载于:https://www.cnblogs.com/valorchang/p/11320115.html

    展开全文
  • 1.'gbk' codec can't decode byte 0xbd in position 3182: illegal multibyte sequence ... 文件某一行出错,具体也不清楚,没在文件里找到与3180有关的内容(欢迎大佬调教) 3.with open( ' test1. CsV','rb '...

    1.'gbk' codec can't decode byte 0xbd in position 3182: illegal multibyte sequence

        换用 utf-8 编码

    2.'utf-8' codec can't decode byte 0xae in position 3180: invalid start byte

        文件中某一行出错,具体也不清楚,没在文件里找到与3180有关的内容(欢迎大佬调教)

    3.with open( ' test1. CsV','rb ',encoding=' utf-8" )as csvfile:ValueError: binary mode doesn't take an encoding argument

         把 'rb' 改为 'r'

    4.未完待续

     

    源码:读取test.csv文件第二列

    #因为open()默认打开文本文件
    import csv
    with open("test.csv", "r", encoding="GBK") as vsvfile:
       reader = csv.reader(vsvfile)
       rows = [row[1] for row in reader]
       print(rows)
    

     

    展开全文
  • 菜鸟笔记首先读取的txt文件如下:AAAAF110 0003E818 0003E1FC 0003E770 0003FFFC 90AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5AAAAF110 0003E814 0003E204 0003E760 0003FFFC 85AAAAF110 0003E7F0 0003E208 ...
  • 今天小编就为大家分享一篇python读取txt文件并取其某一列数据的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Pandas Python读取CSV文件中的某一列

    万次阅读 2017-09-28 16:47:52
    本人菜鸟一枚,刚刚接触Python,也不是专门研究Python的,但是在处理数据的时候需要用到,就...#括号中第一个参数是读取文件的路径,第二个参数是读取csv文件中的某一列,2代表第三列 2.输出csv文件 address.to_cs
  • Python读取csv文件中的某一列

    千次阅读 2020-02-12 15:18:23
    比如这样的个csv文件: 想要读取imageID和label 注:imageID的第个数据是:000858e87c40654a ...data = pd.read_csv(path) #读取文件中所有数据 # 按分离数据 x = data[['ImageID', 'label']]#读取...
  • (ok)python3读取txt文件并取其某一列数据首先读取的txt文件如下:AAAAF110 0003E818 0003E1和 0003E770 0003FFFC 90AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5AAAAF110 0003E814 0003E204 0003E760 0003FFFC ...
  • 菜鸟笔记首先读取的txt文件如下:AAAAF110 0003E818 0003E1FC 0003E770 0003FFFC 90AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5AAAAF110 0003E814 0003E204 0003E760 0003FFFC 85AAAAF110 0003E7F0 0003E208 ...
  • 将第一列数据取出存入新的txt文件,代码如下: # coding:utf-8 f = open('val.txt') # 打开txt文件 line = f.readline() # 以行的形式进行读取文件 list1 = [] while line: a = line.split() b = a[0:1] # 这是...
  • Python 读取csv的某列

    万次阅读 多人点赞 2018-03-27 20:09:47
    假设“A.csv“文件内容是:No.,Name,Age,Score 1,Apple,12,98 2,Ben,13,97 3,Celia,14,96 ...模块 ,有两种方法可以提取其中的一列:方法一 reader函数第一种方法使用reader函数,接收一个可迭代的对象(比...
  • 今天有位同学给了我个excel文件,要求读取某些行,某些,然后我试着做了个demo,这里分享出来,希望能帮到大家:首先安装xlrd:pip3 install xlrd然后上代码:import numpy as npimport xlrddata = xlrd....
  • 如下所示:import xlrd...#注意读中文文件名稍微处理一下data=xlrd.open_workbook(file)table = data.sheet_by_index(0)#按照索引读Excel文件colContent=table.col_values(1)#读某一列,日期在第二列nrows=table.nro...
  • 菜鸟笔记首先读取的txt文件如下:AAAAF110 0003E818 0003E1FC 0003E770 0003FFFC 90AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5AAAAF110 0003E814 0003E204 0003E760 0003FFFC 85AAAAF110 0003E7F0 0003E208 ...
  • python读取文本数据某一列

    千次阅读 2020-04-28 23:56:59
    import codecs f = codecs.open('test1 - 副本.txt', mode='r', encoding='utf-8') # 打开txt文件,以...line = f.readline() # 以行的形式进行读取文件 list1 = [] while line: a = line.split() b = a[0:1] # 这...
  • python读取txt文件并取其某一列数据

    万次阅读 多人点赞 2018-10-10 15:48:59
    首先读取的txt文件如下: AAAAF110 0003E818 0003E1FC 0003E770 0003FFFC 90 AAAAF110 0003E824 0003E208 0003E76C 0003FFFC A5 AAAAF110 0003E814 0003E204 0003E760 0003FFFC 85 AAAAF110 0003E7F0 0003E208 ...
  • Python读取csv的某列

    2019-09-29 08:43:09
    假设“A.csv“文件内容是: No.,Name,Age,Score 1,Apple,12,98 2,Ben,13,97 3,Celia,14,96 ...模块 ,有两种方法可以提取其中的一列: 方法一 reader函数 第一种方法使用reader函数,接收一个...
  • I have a text file which contains a table comprised of numbers e.g:5 10 66 20 17 30 48 40 39 23 14 13 6if for example I want the numbers contained only in the second column, how do i extract that colu...
  • 站长用Python写了个可以提取csv任一的代码,欢迎使用。Github链接csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格:就可以存储为csv文件文件内容是:No.,Name,Age,Score1...
  • csv.DictReader()读取和加载文件,然后根据一列的值处理另外一列的值。 代码很简单,看看就知道啥意思了。 # -*- coding:utf-8 -*- #author:zgd import pandas import csv with open("url_features_3_zgd....

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 233
精华内容 93
关键字:

python读取文件某一列

python 订阅