Perl编程实践与模块应用解析

1、如何申请一个 PAUSE 账户?

要获取 PAUSE 账户,访问 http://pause.perl.org/ 并点击 “Request PAUSE account” 链接,填写包含姓名、电子邮箱地址和首选 PAUSE 账户名等基本信息的网络表单。

PAUSE 账户名目前要求为 4 到 9 个字符 (部分旧账户名可能为 3 个字符)。申请将由人工审核以防止机器人和重复账户,通常一两天内会获批。

获批后会拥有一个以 @cpan.org 结尾的与账户名关联的地址。还可以用该地址创建一个 Gravatar 头像。

2、访问网站http://www.intermediateperl.com/,关注该网站的下载部分,下载其中对练习有用的文件存档,以便在之后没有网络连接时也能使用。

按照要求访问网站,关注下载部分并下载对练习有用的文件存档,以保证无网络时也能使用。

3、读取当前目录中的文件列表,并将文件名转换为完整路径规范。不要使用 shell 或外部程序来获取当前目录。可以使用随 Perl 附带的 File::Spec 和 Cwd 模块。在每个路径前打印四个空格,后面跟一个换行符。

以下是两种实现方式的代码示例:

方式一:

use Cwd;
use File::Spec;
my $cwd = getcwd;
foreach my $file ( glob( ".* *" ) ) {
    print "    ", File::Spec->catfile( $cwd, $file ), "\n";
}

方式二:

use Cwd;
use File::Spec::Functions;
my $cwd = getcwd;
foreach my $file ( glob( ".* *" ) ) {
    print "    ", catfile( $cwd, $file ), "\n";
}

4、从CPAN安装Business::ISBN模块,并使用它从国际标准书号(9781449393090)中提取组代码和出版商代码。

可以使用以下代码实现:

use Business::ISBN;
my $isbn = Business::ISBN->new( '9781449393090' );
print "ISBN is " . $isbn->as_string . "\n";
print "Country code: " . $isbn->country_code . "\n";
print "Publisher code: " . $isbn->publisher_code . "\n";

5、编写一个程序,从命令行获取文件名列表,使用grep选择大小小于 1000 字节的文件,再用map在这些文件名前添加四个空格并在后面添加换行符,最后打印结果列表。

以下是实现该功能的 Perl 代码:

print map { "    $_\n" } grep { -s $_ < 1000 } @ARGV;

这段代码直接从命令行参数 @ARGV 中获取文件名列表,使用 grep 筛选出大小小于 1000 字节的文件,再用 map 对筛选后的文件名进行转换,在文件名前添加四个空格并在后面添加换行符,最后将结果打印出来。

6、编写一个程序,要求用户输入一个模式(正则表达式)。从标准输入读取该数据,而不是从命令行参数获取。报告某个硬编码目录(如“/etc”或“C:\Windows”)中文件名与该模式匹配的文件列表。重复此操作,直到用户输入空字符串而不是模式为止。用户不应输入 Perl 中传统用于分隔模式匹配的斜杠;输入模式由尾随的换行符分隔。确保有缺陷的模式(如括号不匹配的模式)不会导致程序崩溃。

以下是一个满足需求的 Perl 程序示例:

use strict;
use warnings;
use File::Spec;
# 硬编码目录,这里以 /etc 为例
my $directory = '/etc';
while (1) {
    print 'Enter a pattern: ';
    chomp(my $pattern = <STDIN>);
    # 如果用户输入空字符串,退出循环
    last if $pattern eq '';
    # 尝试编译正则表达式
    my $regex = eval { qr/$pattern/ };
    if ($@) {
        print "Invalid pattern: $@. Please try again.";
        next;
    }
    # 读取目录中的文件
    opendir(my $dh, $directory) or die "Can't open $directory: $!";
    my @files = readdir($dh);
    close
源码地址: https://pan.quark.cn/s/d1f41682e390 miyoubiAuto 米游社每日米游币自动化Python脚本(务必使用Python3) 8更新:更换cookie的获取地址 注意:禁止在B站、贴吧、或各大论坛大肆传播! 作者已退游,项目不维护了。 如果有能力的可以pr修复。 小引一波 推荐关注几个非常可爱有趣的女孩! 欢迎B站搜索: @嘉然今天吃什么 @向晚大魔王 @乃琳Queen @贝拉kira 第三方库 食用方法 下载源码 在Global.py中设置米游社Cookie 运行myb.py 本地第一次运行时会自动生产一个文件储存cookie,请勿删除 当前仅支持单个账号! 获取Cookie方法 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 按刷新页面,按下图复制 Cookie: How to get mys cookie 当触发时,可尝试按关闭,然后再次刷新页面,最后复制 Cookie。 也可以使用另一种方法: 复制代码 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 控制台粘贴代码并运行,获得类似的输出信息 部分即为所需复制的 Cookie,点击确定复制 部署方法--腾讯云函数版(推荐! ) 下载项目源码和压缩包 进入项目文件夹打开命令行执行以下命令 xxxxxxx为通过上面方式或取得米游社cookie 一定要用双引号包裹!! 例如: png 复制返回内容(包括括号) 例如: QQ截图20210505031552.png 登录腾讯云函数官网 选择函数服务-新建-自定义创建 函数名称随意-地区随意-运行环境Python3....
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值