python文件操作seek()偏移量,读取指正到指定位置操作

python 文件操作seek() 和 telll() 自我解释

file.seek()方法格式: seek(offset,whence=0) 移动文件读取指针到制定位置

offset:开始的偏移量,也就是代表需要移动偏移的字节数。

whence: 给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头算起,1代表开始从当前位置开始算起,2代表从文件末尾开始算起。当有换行时,会被换行截断。  seek()无返回值,故值为None

tell() : 文科文件的当前位置,即tell是获取文件指针位置。

readline(n):读入若干行,n代表读入的最长字节数。

readlines() :读入所有行的内容

read读入所有行的内容

tell() : 返回文件读取指针的位置

补充知识:python中limit()和offset()的用法

limit()限制结果集每次值查询几条数据 offset()可以限制查找对象数据的时候过滤掉多少条切片,可以对Query对象使用切片操作,来获取想要的数据,可以使用 select(start,stop)方法来求片操作,也可以使用'[start:stop]的方式来进行切片操作,

在实际开发中,中括号形式的是用处较多的,希望大家掌握

#encoding: utf-8

from sqlalchemy import create_engine,Column,Integer,String,Float,func,and_,or_,\
  DateTime
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from random import randint
from datetime import datetime

HOSTNAME = '127.0.0.1'
PORT = 3306
DATABASE = 'first_sqlalchemy'
USERNAME = 'root'
PASSWORD = '123456'

#dialect+driver://username:password@host:port/database
DB_URI = "mysql+pymysql://{username}:{password}@{host}:{port}/" \
     "{db}?charset=utf8".format(username=USERNAME,password=PASSWORD,host=HOSTNAME,port=PORT,db=DATABASE)

engine = create_engine(DB_URI)
Base = declarative_base(engine)

# Session = sessionmaker(engine)
# session = Session()
session = sessionmaker(engine)() #Session(**local_kw)

class Article(Base):
  __tablename__ = 'article'
  id = Column(Integer,primary_key=True,autoincrement=True)
  title = Column(String(50),nullable=False)
  create_time = Column(DateTime,default=datetime.now)

  def __repr__(self):
    return '<article:{title}>'.format(title=self.title)

# Base.metadata.drop_all()
#
# Base.metadata.create_all()
#
#
# for x in range(0,100):
#   article = Article(title = 'title%s'%x)
#   session.add(article)
# session.commit()

#第一limit的用法,限制查询多少数据
article = session.query(Article).limit(10).all()#用limit限制只查询10个数据
print(article)

#第二个参数offset的用法,本意是偏移量,在这里就是从多少开始查询
article_offset = session.query(Article).offset(10).all()
print(article_offset)

#offset和limit联合起来用,就相当于python 的字符串和列表、元祖的切片操作
article_offset_limit = session.query(Article).offset(10).limit(5).all()
print(article_offset_limit)

#如果查询最新的10篇文章,就可以用order_by 和 limit 一起用
article_order_by_limit = session.query(Article).order_by(Article.id.desc()).limit(10).all()
print(article_order_by_limit)

#slice,本身就是切片的意思
article_order_by_slice = session.query(Article).order_by(Article.id.desc()).slice(0,10).all()
print(article_order_by_slice)

#还有一个更简单的方法,就想python的列表切片操作

article_list_slice = session.query(Article).order_by(Article.id.desc())[0:10]
print(article_list_slice)

以上这篇python文件操作seek()偏移量,读取指正到指定位置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 在Python中操作文件之seek()方法的使用教程

    seek()方法在偏移设定该文件的当前位置.参数是可选的,默认为0,这意味着绝对的文件定位,它的值如果是1,这意味着寻求相对于当前位置,2表示相对于文件的末尾. 没有返回值.需要注意的是,如果该文件被打开或者使用'a'或'A+'追加,任何seek()操作将在下次写撤消. 如果该文件只打开使用"a"的追加模式写,这种方法本质上是一个空操作,但读使能(模式'a+'),它仍然在追加模式打开的文件非常有用. 如果该文件在文本模式下使用"t",只有tell()返回的偏移开都是

  • Python文件和目录操作详解

    一.文件的打开和创建 1.打开 复制代码 代码如下: open(file,mode): >>>fo = open('test.txt', 'r') >>>fo.read() 'hello\n' >>>fo.close() file(file,mode): >>>f = file('test.txt', 'r') >>>f.read() 'hello\n' >>>f.close() mode可取值:

  • Python读写txt文本文件的操作方法全解析

    一.文件的打开和创建 >>> f = open('/tmp/test.txt') >>> f.read() 'hello python!\nhello world!\n' >>> f <open file '/tmp/test.txt', mode 'r' at 0x7fb2255efc00> 二.文件的读取 步骤:打开 -- 读取 -- 关闭 >>> f = open('/tmp/test.txt') >>&

  • Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l', 'l', 'e', 'n') >>> t.index('a') Traceback (most recent call last): File "<pyshell#2>", line 1, in <module> t.index('a') V

  • python文件操作seek()偏移量,读取指正到指定位置操作

    python 文件操作seek() 和 telll() 自我解释 file.seek()方法格式: seek(offset,whence=0) 移动文件读取指针到制定位置 offset:开始的偏移量,也就是代表需要移动偏移的字节数. whence: 给offset参数一个定义,表示要从哪个位置开始偏移:0代表从文件开头算起,1代表开始从当前位置开始算起,2代表从文件末尾开始算起.当有换行时,会被换行截断. seek()无返回值,故值为None tell() : 文科文件的当前位置,即tell是获

  • Python图像处理之图像的读取、显示与保存操作【测试可用】

    本文实例讲述了Python图像处理之图像的读取.显示与保存操作.分享给大家供大家参考,具体如下: python作为机器学习和图像处理的利器,收到越来越多的推崇,特别是在图像处理领域,越来越多的研究和开发开始转向使用python语言,下面就介绍python图像处理中最基本的操作,即图像的读取显示与保存. 1.使用PIL模块 代码如下: # -*- coding:utf-8 -*- from PIL import Image import numpy as np def test_pil(): #读

  • python读取word 中指定位置的表格及表格数据

    1.Word文档如下: 2.代码 # -*- coding: UTF-8 -*- from docx import Document def readSpecTable(filename, specText): document = Document(filename) paragraphs = document.paragraphs allTables = document.tables specText = specText.encode('utf-8').decode('utf-8') f

  • git之如何把本地文件上传到远程仓库的指定位置

    2018.11.26添加内容: 对于自己的仓库,我们建议将远程仓库通过clone命令把整个仓库克隆到本地的某一路径下.这样的话我们从本地向远程仓库提交代码时,就可以直接把需要提交的文件拖到我们之前克隆下来的路径下,接下来在这整个仓库下进行 git add . -> git commit -m '注释' -> git push origin master 就可以了.由于是自己的仓库,在工作未结束之前肯定会频繁更新或维护,所以克隆到本地,直接拖文件进到本地路径,再进行push是很方便的.而且强烈建

  • python文件处理笔记之文本文件

    目录 1. 建立文件 1.1 文本文件代码实现 1.2 代码编写分析 2. 基本的读写文件 2.1 用文件对象write(s)方法写内容 2.2 用文件对象read()方法读取内容 2.3 连续用read()方法.write()方法操作文件 3. 复杂的读写文件 1.一次写入多行 2.一次读一行 3.以列表格式读取多行 4.连续读特定字节数量的内容 5.在指定位置读内容 4. 文件异常处理 5. 文件与路径 5.1 与路径相关的操作 获取程序运行的当前路径 5.2 动态指定路径下建立新文件 总结

  • Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例

    本文实例讲述了Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式.分享给大家供大家参考,具体如下: demo.py(读取文件): # 1. 打开文件 file = open("readme.txt") # 文件不存在会抛异常. 默认以只读方式打开 # with open("readme.txt") as file: # 这种方式,会自动close()释放资源 # 2. 读取文件内容 text = file.read() #

  • Python文件操作和数据格式详解(简单简洁)

    目录 一.文件操作 1.文件的基本操作 2.读文件 3.写文件 4.os模块的使用 二.JSON 总结 一.文件操作 前言: 什么是计算机的流? "流"指的是在不同的输入/输出等设备(键盘.内存.显示器.音响等)之间进行传递数据. 例如:在Python中使用input()函数,就会产生数据经过键盘流输入到存储器. print() 就会有数据从存储器中流出到屏幕.所以流实际上就是一个字节序列. 就如同管道中的水 “流来流去”; 1.文件的基本操作 Python中可以通过内置函数open(

  • python文件操作相关知识点总结整理

    本文汇总了python文件操作相关知识点.分享给大家供大家参考,具体如下: 总是记不住API.昨晚写的时候用到了这些,但是没记住,于是就索性整理一下吧: python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:os.listdir() 函数用来删除一个文件:os.remove() 删除多个目录:os.removedirs(r"c:\python&q

  • Python文件操作基本流程代码实例

    文件操作之基本流程 #文本 近日,上市药企--浙江莎普爱思药业股份有限公司频遭质疑. 12月2日,一篇名为<一年卖出7.5亿的洗脑"神药",请放过中国老人>的文章称, 多位眼科医生并不认可莎普爱思滴眼液的"白内障防治功效".质疑者认为, 莎普爱思滴眼液是"假科普,真营销",通过广告误导患者. 针对质疑,莎普爱思3日晚发布的公告称, 0.5%苄达 赖氨酸滴眼液已于上世纪90年代通过了临床试验, 是一种安全的.有效的抗白内障药物.假的 #

随机推荐