1765_Perl实现fileread功能

news2024/11/14 16:24:01

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

         fileread是MATLAB中的一个函数,可以实现对一个文本文件的全文读取。读取后的内容返回给一个字符串量。在Python中也有类似的功能,不过MATLAB中的这个更能够直观看出函数的功能,因此题目暂取这样。

         之前完成过一个readlines功能,借由那个功能实现fileread功能在Perl中实现起来十分简单。

以下是之前的实现的readlines功能函数代码:

sub ReadLines

{

         my $file_name = shift;

         open(LINES,"<$file_name") or die "can not open: $!";

         my @lines = <LINES>;

         close LINES;

         return @lines;

}

         在上面的代码基础上实现读取整个文本为一个字符串在Perl中实现起来十分简单,所需要做的仅仅是把readlines的返回结果进行拼接,具体的实现代码如下:

sub FileRead

{

         my $file_name = shift;

         join '',ReadLines($file_name);

}

测试结果如下:

         完成了上面简单的两个小函数,重新构建我之前想要完成的功能,重新修改后的代码看着简单清晰了许多。这多少给了我一点启示:有些路还是需要走的,磨刀不误砍柴工!

 

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

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

相关文章

快速创建ES集群

win10 中docker 设置 快速创建集群 访问 官网 elasticsearch/docs/reference/setup/install/docker at main elastic/elasticsearch GitHub 负责上面2个文件&#xff0c;并修改&#xff0c;修改如下 .env文件 # Password for the elastic user (at least 6 characters) …

【私有云】网络虚拟化

前言 大家好&#xff0c;我是秋意零。 之前一直对 OpenStack 网络很陌生与神奇啊&#xff0c;不知道它是如何实现的&#xff0c;网络结构是怎样的。不过&#xff0c;今天介绍的是网络虚拟化&#xff0c;它在 OpenStack 中及云计算中是非常重要的概念&#xff0c;是理解 OpenS…

springboot整合websocket遇到的小问题

今天尝试了通过springboot整合websocket来初步学习使用websocket&#xff0c;然后发现启动的时候报错了&#xff0c;发这篇文章分享一下。 springboot整合websocket的步骤很简单&#xff1a; 第一步&#xff1a;创建一个springboot项目&#xff0c;在这里命名为websocket 在I…

day16 移除元素

题目描述 解题思路&#xff1a; 1.快慢指针&#xff0c;移除数组元素只能是下标操作&#xff1b;fast往前&#xff0c;不等于value的时候&#xff0c;赋给slow&#xff1b; 2.slow&#xff1b;返回的长度直接返回slow&#xff1b; int removeElement(int* nums, int numsSize, …

Rethinking the Role of Pre-ranking in Large-scale E-Commerce Searching system

来源&#xff1a; KDD’2023Taobao Search 文章目录 ASHASMOL训练样本训练目标蒸馏精排 总结 反思粗排在大规模电商搜索系统中的角色。 由于巨大的数据量以及对系统实时反馈的要求&#xff0c;一个典型的工业排序系统通常由这些模块组成&#xff1a;召回&#xff08;matching&…

VTR编译问题

机器环境 vmware 16.0&#xff1b; ubuntu22.04.02; 问题描述 一、在build过程中会出现一些警告&#xff0c;但没有停止&#xff1b; 二、访问 **raw.githubsercontent.com/…/…**相关网站被拒绝&#xff0c;如下图&#xff1a; 之前在 /etc/hosts 仅仅是添加了raw.github…

JS数组解构赋值变量存在依赖关系

题目随便起的&#xff0c; 在刷力扣 41.缺失的第一个正数 这个题的时候&#xff0c;出现了解构赋值的问题&#xff0c; 对于[a,b] [1,2]和[b,a][2,1]按理说都是行的通的&#xff0c;和位置没有关系&#xff0c;本质上都是进行交换 可是当我在题目中 使用[nums[nums[i]-1], nu…

SpringMVC的高频面试题

2023最新版&#xff08;持续更新&#xff09; 一、SpringMVC的高频面试题1. SpringMVC的执行流程2. SpringMVC常见的注解有哪些&#xff1f; 一、SpringMVC的高频面试题 1. SpringMVC的执行流程 前置知识 视图阶段&#xff08;JSP&#xff09;: 涉及到的重要组件&#xff1a;…

KubeSphere 社区双周报 | KubeSphere 多项更新 | 2023.06.23-07.06

KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过 commit 的贡献者&#xff0c;并对近期重要的 PR 进行解析&#xff0c;同时还包含了线上/线下活动和布道推广等一系列社区动态。 本次双周报涵盖时间为&#xff1a;2023.06.23-2023.…

管道设计专业版:Pipedata-Pro Crack

Pipedata-Pro 提高了管道设计的效率并减轻了查找管道信息的负担。它可以直观、轻松地检索最新的管道和设计数据。尺寸和重量单位可以设置为公制或美制单位。 Pipedata-Pro 于 1996 年由 Zeataline Projects 推出&#xff0c;现已遍布全球&#xff0c;Pipedata-Pro 管道表的映射…

怎么判断两个文档节点时候相同?判断两个DOM节点时候相等、相同的4种方法

方法1&#xff1a; document.querySelector(html) document.querySelector(html) //true 方法2&#xff1a;compareDocumentPosition document.querySelector(html).compareDocumentPosition(document.querySelector(html)) //0 返回0就代表相同 方法3&#xff1a;isEqualNode …

编译运行ContactDiscoveryService-Icelake

下载 git clone https://codeup.aliyun.com/6306306f95064d67d44656e5/lxr1907/ContactDiscoveryService-Icelake.git或github地址 git clone https://github.com/signalapp/ContactDiscoveryService-Icelake按照Readme安装 Building git submodule init git submodule update …

每次装完 homebrew,ohmyzsh 就会报错:Insecure completion-dependent directories detected:

参考:https://zhuanlan.zhihu.com/p/313037188 这是因为在big sur安装homebrew后&#xff0c;会在/usr/local/share/生成一个zsh文件夹&#xff0c;里面包含了 因此&#xff0c;zsh文件默认设置的权限是775&#xff0c;也就是group user有writer的权利&#xff0c;zsh认为这是…

python读写excel利器:xlwings从入门到精通

python读写excel利器&#xff1a;xlwings 从入门到精通 目录 安装和使用 基础操作 操作工作簿操作工作表读取单元格写入(单元格赋值)range的操作&#xff08;range常用的api&#xff09; 写入一行或一列Excel数据(函数式&#xff09;使用range(\A1\).api.AddComment(\comments…

本质矩阵(Essential Matrix)E进行分解的过程

分解本质矩阵的过程遵循以下步骤&#xff1a; 使用奇异值分解&#xff08;SVD&#xff09;计算本质矩阵E的分解。SVD分解是一种将矩阵分解为三个矩阵的乘积的方法&#xff0c;它的形式为 E UΣV^T&#xff0c;其中U和V是正交矩阵&#xff0c;Σ是对角矩阵。此步骤的结果存储在…

Edge浏览器无法展示Stable Diffusion Control Net插件

Edge浏览器无法展示Stable Diffusion Control Net插件 最近在学习Stable Diffusion&#xff0c;需要使用到Control Net插件&#xff0c;结果通过各种方式安装成功插件后&#xff0c;浏览器页面没有展示ControlNet相关页面&#xff0c;最终换到Chorme浏览器后正常&#xff0c;猜…

【Python】绘图_pandas(1)

# -*- coding: utf-8 -*- #汉字处理 import matplotlib.pyplot as plt import numpy as np from numpy.random import randn import pandas as pd #import DataFrame from matplotlib.font_manager import FontPropertiesfont FontProperties(fnamer"c:\windows\fonts\si…

基于51单片机的电子密码锁设计

功能&#xff1a;本实例是基于51单片机的电子密码锁&#xff0c;主要硬件由51单片机最小系统&#xff0c;LCD1602液晶屏电路&#xff0c;继电器控制电路&#xff0c;AT24C02存储电路&#xff0c;LED指示灯电路&#xff0c;矩阵按键电路构成。 1.系统采用LCD1602液晶屏作为显示屏…

【软件设计原则】系统设计面试基础:CAP 与 PACELC

什么是 CAP 定理以及 PACELC 如何扩展它&#xff1f; 在分布式系统中&#xff0c;可能会发生不同类型的故障&#xff0c;例如&#xff0c;服务器可能会崩溃或永久故障&#xff0c;磁盘可能会损坏导致数据丢失&#xff0c;或者网络连接可能会丢失&#xff0c;导致系统的一部分无…

在openFoam中创建cellZone

简介 openFoam的cellZone概念十分重要&#xff0c;可以给一个区域的单元命名&#xff0c;广泛应用于设置初始场&#xff08;如气、液两相流的初始VOF分布&#xff09; 而cellZone通常由cellSet转化而来&#xff0c;本文将介绍使用cellSet定义cellZone的方法 方法 在项目的sy…