1766_perl实现readlines功能

news2024/11/17 17:42:10

全部学习汇总: GreyZhang/perl_basic: some perl basic learning notes. (github.com)

         近段时间写一个Perl程序,中间反反复复用到了文件的读写。虽说是用Perl的基本功能实现读写非常简单,但是写的过程中我不止一次在想Python以及MATLAB的功能。后来终于忍不住写了一个小函数,用来实现一个readlines功能。

         其实之前的工作中这种功能早就用到了很多次,但是那时候Perl的水平应该还处于小学的造句水平。虽然那时候看过怎么写函数,但是看得非常模糊,加上那时候写代码的经验几乎没有,即使是看过的东西脑子里也很难留下印象。因此,那时候的总体方案是能够解决问题就好。那段时间写了很多从可读性到结构甚至是功能上烂得一塌糊涂的脚本,但是依然很兴奋,因为那东西管用!虽说是很烂,但是确实是减轻了我不少工作量,每次实现一次自动化都让我觉得有一点点小小的兴奋。

         前阵子终于下定决心,让自己的Perl再前进一个阶段,争取能够到小学作文水准。于是乎学会了写简单的Perl函数,没用过几次Perl函数构造功能就决定先放弃Python,拿一点时间出来好好掌握一下Perl。

         关于函数式的编程,我在Python学习使用中很早就掌握了。这种技能上相对于简单脚本的优越性让我在一年多的时间内几乎放弃了Perl。不过简单学习了Perl的函数式编程之后,我瞬间觉得自己似乎走错了路。我似乎能够用少得多的代码完成之前用Python实现的各种功能。又加上公司的办公环境装了一套加密系统,Python只能够访问非加密文件,而Perl则在访问上没有任何限制,这更让我有了重返Perl的决心。

         说这么多,并不是说Python不好,我也很喜欢Python,未来还有可能更多的使用Python。不过,在我的工作中能够给我带来效益的层面讲,Perl似乎更合适一些。因为我通常不需要构建大型的程序框架,我需要的其实还是一些小脚本。

         说多了,实现一个readlines功能函数代码如下:

测试结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756897.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为OD机试真题 Java 实现【评论转换输出】【2023 B卷 100分】,附详细解题思路

目录 专栏导读一、题目描述在这里插入图片描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A…

什么是元学习?外循环和内循环?支持集和查询集?

一、前言 元学习近几年也算是一个比较热门的研究方向,大部分被用来解决低资源少样本零样本学习的任务场景中。 那么为什么元学习可以提升低资源少样本的学习效果呢?活着说元学习到底是一个什么阳的算法呢? 这里做一个简单的概念阐述。元学…

echart之map地图图表使用教程

本文以echarts展示成都地图为例子。 echarts map (echarts地图)使用教程 效果展示准备阶段获取地图geojson数据安装echarts 开始绘制容器准备js代码 补充事项vue3.0 用ref定义echarts报错toRaw、markRaw 扩展 地图隐藏南海诸岛地图显示提示框地图实现下钻…

Vue项目的启动

前言: 由于最近开始实习,负责人上来就给我丢一个前端vue项目和后端文件,让我在本机完成部署,由于之前学的基本上都是后端相关知识,很少有了解到前端的东西,因此在这里将自己部署Vue项目时遇到的问题和解决过…

编译libtiff库给IOS平台用

打开libtiff官方网 : libtiff / libtiff GitLab 克隆: git clone --recursive https://gitlab.com/libtiff/libtiff.git 克隆成功并打开libtiff目录,发现有autogen.sh 与CMakeLists.txt所以可生成Configure程序来配置并编译,也可直接使用CMake-GUI来配置编译,选择其中一种 …

远程会诊如何实现?

比如:医生遇到复杂病情需要求助院外专家远程会诊过程中,需要将电脑中的病人资料给院外专家看,同时确保医院电脑和网络系统绝对安全,电脑不允许安装任何外部软件,不能被外人控制和操作,外部设备不能接入医院…

【Java技术专题】「攻破技术盲区」带你攻破你很可能存在的Java技术盲点之技术功底指南(鲜为人知的技术)

带你攻破你很可能存在的Java技术盲点之技术功底指南 基本类型的包装类技术盲点:基本类型的比较技术盲点:字符串内部化(string interning)字符串内部化的示例 技术盲点:类型缓存机制(空间换时间)…

微信小程序border-radius不圆滑

border-radius可以设置:百分比或者像素值 1.使用像素值比较圆滑 2.使用百分比不够圆滑

习题1.25

对吗?实践出真知,运行看看。代码如下。 (defn square [x] (* x x))(defn fast-expt[b n](println "call iter" n)(cond (= 1 n) b(= 2 n) (square b)(even? n) (square (fast-expt b (/ n 2))):else (* b (fast-expt b (- n 1)))))(defn expmod [base exp m](mod…

pytest 结合logging输出日志保存至文件

API_log.py import loggingclass loger():def logering(self):# 创建logger对象logger logging.getLogger(test_logger)# 设置日志等级logger.setLevel(logging.DEBUG)# 追加写入文件a ,设置utf-8编码防止中文写入乱码test_log logging.FileHandler(test.log, a,…

Java:基于JDBC数据连接池方式同步第三方数据库表信息数据

前言 最近遇到一个需求就是要拉取第三方的数据信息,但是第三方那边又没有对外暴露对接接口,只给出了具体的数据库连接信息和具体表信息基于第三方给出的有效信息,我采取了用 JDBC 传统的方式去进行数据拉取注意:前置条件两端的网…

收费站对讲广播系统方案

收费站对讲广播系统方案 收费站对讲广播系统是一种用于收费站内部通信和广播传输的系统。它能够实现不同收费站点之间的语音通信和广播,以便快速、准确地传达信息和指令。该系统通常由以下几个核心组件组成:1. 主控台:主控台是系统的中心控制…

cocos shader在编辑器正常,浏览器上不显示

问题出在需要将图片的package属性取消勾选。如果用的单色精灵,那么可以将系统的白色图片复制一份再取消勾选。 相关链接: shader在浏览器上不显示 - Creator 2.x - Cocos中文社区

Redis高级篇(一)

分布式缓存 -- 基于Redis集群解决单机Redis存在的问题 单机的Redis存在四大问题: 1.Redis持久化 Redis有两种持久化方案:RDB持久化、AOF持久化 1.1.RDB持久化 什么是RDB持久化 RDB全称Redis Database Backup file(Redis数据备份文件&am…

第一章 JavaScript --下

第一章 JavaScript --下 2.5.6 DOM操作 由于实际开发时基本上都是使用JavaScript的各种框架来操作,而框架中的操作方式和我们现在看到的原生操作完全不同,所以下面罗列的API仅供参考,不做要求。 2.5.6.1 在整个文档范围内查询元素节点 功…

XUbuntu22.04之vim无法复制内容到系统(一百八十四)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

2023年7月14日,ArrayList

集合框架图: 集合和数组的区别 AarrayList ArrayList底层实现原理 ArrayList的底层实现是基于数组的动态扩容。 初始容量:当创建一个新的ArrayList对象时,它会分配一个初始容量为10的数组。这个初始容量可以根据需求进行调整。 //表示默认的初…

CS162 9-10

lecture9 thread lecture10 I/O层 调度 1.最小化响应时间 2.最大化吞吐量 3.分配时间公平 FCFS 后面的短请求,要等待前面的长请求。 Round Robin Scheduling Each process gets a small unit of CPU time (time quantum), usually 10-100 milliseconds – …

layui会议OA项目数据表格新增改查

文章目录 前言一、后台代码编写1.1 数据表优化1.2 R工具类1.3 UserDao新增改查1.4 Servlet的编写 二、前台页面的编写2.1 userManege.jsp2.2 userManage.js2.3 新增、修改用户共用jsp2.4add、edit的js 三、演示3.1 查询3.2 新增3.3 修改3.4 删除 前言 在上篇博客我们实现了左侧…

山东农信:一云多芯助力金融活水普惠齐鲁大地

农业金融正走在发展的关键路口。 一方面,我国全面推进乡村振兴、加快建设农业强国,需要形成和健全金融支农服务体系,为三农发展提供多元金融服务;另一方面,在大数据、云计算、人工智能等数字化的驱动下,数…