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


Posted in Python onJuly 05, 2020

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()偏移量,读取指正到指定位置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
下载糗事百科的内容_python版
Dec 07 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
Phantomjs抓取渲染JS后的网页(Python代码)
May 13 Python
详解pyqt5 动画在QThread线程中无法运行问题
May 05 Python
Python中的枚举类型示例介绍
Jan 09 Python
Django框架会话技术实例分析【Cookie与Session】
May 24 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
python如何删除列为空的行
Jul 17 Python
python 利用toapi库自动生成api
Oct 19 Python
使用Python封装excel操作指南
Jan 29 Python
解决pycharm修改代码后第一次运行不生效的问题
Feb 06 Python
Matplotlib animation模块实现动态图
Feb 25 Python
python 读txt文件,按‘,’分割每行数据操作
Jul 05 #Python
python如何调用java类
Jul 05 #Python
使用Python文件读写,自定义分隔符(custom delimiter)
Jul 05 #Python
如何清空python的变量
Jul 05 #Python
增大python字体的方法步骤
Jul 05 #Python
树莓派升级python的具体步骤
Jul 05 #Python
Python OpenCV去除字母后面的杂线操作
Jul 05 #Python
You might like
利用PHP创建动态图像
2006/10/09 PHP
php去除html标记的原生函数详解
2015/01/27 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
Laravel重定向,a链接跳转,控制器跳转示例
2019/10/22 PHP
MooTools 1.2介绍
2009/09/14 Javascript
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
2011/02/12 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
jQuery Html控件基本操作(日常收集整理)
2016/03/11 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
2017/04/13 Javascript
使用Node.js搭建静态资源服务详细教程
2017/08/02 Javascript
关于Vue背景图打包之后访问路径错误问题的解决
2017/11/03 Javascript
Vue + element 实现多选框组并保存已选id集合的示例代码
2020/06/03 Javascript
详解为什么Vue中的v-if和v-for不建议一起用
2021/01/13 Vue.js
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
Mac OS X10.9安装的Python2.7升级Python3.3步骤详解
2013/12/04 Python
Python map和reduce函数用法示例
2015/02/26 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
python使用arcpy.mapping模块批量出图
2017/03/06 Python
python3中int(整型)的使用教程
2017/03/23 Python
python 换位密码算法的实例详解
2017/07/19 Python
Python2和Python3中print的用法示例总结
2017/10/25 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Python3自动生成MySQL数据字典的markdown文本的实现
2020/05/07 Python
PyChon中关于Jekins的详细安装(推荐)
2020/12/28 Python
通过一张图教会你CSS3倒影的实现
2017/09/26 HTML / CSS
kmart凯马特官网:美国最大的打折零售商和全球最大的批发商之一
2016/11/17 全球购物
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
雷蛇美国官网:Razer
2020/04/03 全球购物
30岁生日感言
2014/01/25 职场文书
《王者天下》第4季首话新剧照 4月9日正式开播
2022/04/07 日漫