当我运行以下代码时
def regEx1():
os.chdir("C:/Users/Luke/Desktop/myFiles")
files = os.listdir(".")
os.mkdir("C:/Users/Luke/Desktop/FilesWithRegEx")
regex_txt = input("Please enter the website your are looking for:")
for x in (files):
inputFile = open((x), encoding = "utf8", "r")
content = inputFile.read()
inputFile.close()
regex = re.compile(regex_txt, re.IGNORECASE)
if re.search(regex, content)is not None:
shutil.copy(x, "C:/Users/Luke/Desktop/FilesWithRegEx")
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息,指向for循环后的第一行.
^
SyntaxError: non-keyword arg after keyword arg
Run Code Online (Sandbox Code Playgroud)
导致此错误的原因是什么?
我一直在尝试使用简单的递归方法在Ruby中实现一个更大程序的部分目录遍历.但是我发现Dir.foreach不包含其中的目录.我怎样才能列出它们?
码:
def walk(start)
Dir.foreach(start) do |x|
if x == "." or x == ".."
next
elsif File.directory?(x)
walk(x)
else
puts x
end
end
end
Run Code Online (Sandbox Code Playgroud) 我试图使用strncpy只将一部分字符串复制到C中的另一个字符串.
如:
c[] = "How the heck do I do this";
Run Code Online (Sandbox Code Playgroud)
然后复制"do this"到另一个字符串,这样:
d[] = "do this"
Run Code Online (Sandbox Code Playgroud)
感谢帮助.
我有一个html需要解析的~2 MB 文件,其中包含大约500行和大约70列.我需要以一种我以后可以将其输入SQL Server数据库的方式清理它.我过去使用Perl解析过文件,但从来没有html文件,我想知道在进行简单匹配和格式化之前是否有任何模块应该检查.
一点点更新:
<td class="tableHeaderDarkCenter">CUSIP/ISIN</td>
<td class="tableHeaderDarkCenter">Stock Ticker</td>
<td class="tableHeaderDarkCenter">MLCC Code</td>
<td class="tableHeaderDarkCenter">Bond Ticker</td>
<td class="tableHeaderDarkCenter">Issuer Name</td>
<td class="tableHeaderDarkCenter">Convertible Price(USD)</td>
<td class="tableHeaderDarkCenter">Par Amount</td>
<td class="tableHeaderDarkCenter">Coupon</td>
<td class="tableHeaderDarkCenter">Maturity/Mandatory Conversion Date</td>
<td class="tableHeaderDarkCenter">Outstanding Amt ($MM)</td>
<td class="tableHeaderDarkCenter">Bonds/Shrs Outstanding</td>
<td class="tableHeaderDarkCenter">Market Value($MM)</td>
<td class="tableHeaderDarkCenter">Index Weight(%)</td>
<td class="tableHeaderDarkCenter">YTM(%)</td>
<td class="tableHeaderDarkCenter">YTP(%)</td>
<td class="tableHeaderDarkCenter">Greater of YTM/YTP(%)</td>
<td class="tableHeaderDarkCenter">Duration</td>
<td class="tableHeaderDarkCenter">Currency</td>
<td class="tableHeaderDarkCenter">Country</td>
<td class="tableHeaderDarkCenter">Series</td>
<td class="tableHeaderDarkCenter">Accrued Interest</td>
<td class="tableHeaderDarkCenter">Current Yield(%)</td>
<td class="tableHeaderDarkCenter">Yield Advantage(%)</td>
<td class="tableHeaderDarkCenter">Moody Rating</td>
<td class="tableHeaderDarkCenter">S&P Rating</td>
<td …Run Code Online (Sandbox Code Playgroud) 我听说最好不要安装CPAN系统的Perl版本的模块.我知道如何使用命令行安装模块,我只是想知道是否有办法将CPAN与系统的核心Perl分开.
我是不是该:
下载源代码并专门为这些模块创建一个目录?
任何人都有他们成功使用的任何其他想法或实施?
我正在使用Arch Linux和Perl 5.16.2.
这里我试图绑定特定查询的表名:
$sth = $dbh->prepare("SELECT id FROM ? WHERE service_id = ?");
Run Code Online (Sandbox Code Playgroud)
和执行语句:
$sth->execute($table_name,$service_id);
Run Code Online (Sandbox Code Playgroud)
它给出了SQL错误,为什么会这样?
有什么办法可以将表名绑定到特定查询吗?
我最近安装了Ruby 2.0.0,发现它现在有一个懒惰的方法用于Enumerable mixin.根据之前的函数式语言经验,我知道这可以提高代码的效率.
我做了一个懒惰与渴望的基准(不确定是否是没有实际意义),并发现懒惰持续更快.为什么是这样?什么使得懒惰评估更适合大输入?
基准代码:
#!/usr/bin/env ruby
require 'benchmark'
num = 1000
arr = (1..50000).to_a
Benchmark.bm do |rep|
rep.report('lazy') { num.times do ; arr.lazy.map { |x| x * 2 }; end }
rep.report('eager') { num.times do ; arr.map { |x| x * 2}; end }
end
Run Code Online (Sandbox Code Playgroud)
基准报告样本:
user system total real
lazy 0.000000 0.000000 0.000000 ( 0.009502)
eager 5.550000 0.480000 6.030000 ( 6.231269)
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建数组的数组列表。完成后,我希望数组列表如下所示:
[ [Mary] , [Martha,Maggie,Molly] ]
Run Code Online (Sandbox Code Playgroud)
我试图通过首先将“Mary”定义为长度为 1 的字符串数组,并将“Martha、Maggie、Molly”定义为长度为 3 的字符串数组来实现这一点。然后我尝试将这些数组添加到数组列表中。但遗憾的是,数组列表将不接受数组。看一看:
String[] s1 = new String[1];
String[] s3 = new String[3];
ArrayList<String[]> list1 = new ArrayList<String[]>();
s1[0]="Mary";
s3[0]="Martha";
s3[1]="Maggie";
s3[2]="Molly";
list1.add(s1[0]);
list1.add(s3[0]);
list1.add(s3[1]);
list1.add(s3[2]);
Run Code Online (Sandbox Code Playgroud)
关于如何将这些数组添加到 list1 以形成数组的数组列表的任何想法?
我有一个脚本,它采用文件夹的相对路径.有没有办法获取指向的文件夹/目录的名称?如果需要,它可能是绝对路径,我将使用正则表达式来剥离它.
说我正在执行:
/example/a/b/c/d/perl.pl
Run Code Online (Sandbox Code Playgroud)
例如1
如果他们输入:
../../
Run Code Online (Sandbox Code Playgroud)
我希望它能够返回'b'(或绝对路径到b,我可以写一个脚本去除它).
EG2
如果他们输入:
./
Run Code Online (Sandbox Code Playgroud)
我希望它能够返回'd'(或者再次,绝对路径直到d).
有没有一种简单的方法可以做到这一点,因为我能想到的唯一方法是计算../文件的绝对路径上的数量和使用它来进行正则表达式,这需要很多处理.
谢谢
我是Perl的新手,所以我遇到了一些麻烦.说我有两个数组:
@num = qw(one two three);
@alpha = qw(A B C);
@place = qw(first second third);
Run Code Online (Sandbox Code Playgroud)
我想创建一个哈希,第一个元素作为键,剩余的值作为数组,无论它们是3还是3000个元素
所以散列本质上是这样的:
%hash=(
one => ['A', 'first'],
two => ['B', 'second'],
third => ['C', 'third'],
);
Run Code Online (Sandbox Code Playgroud) 我是一名游戏玩家,他决定要制作其他人可以玩的基本游戏.我对编码非常陌生并且对它有最基本的了解.我的堂兄和我正在尝试在Python 3.6.0中制作基于文本的游戏.我们在互联网上搜索了我们的问题的答案,但找不到任何东西.代码如下:
def start ():
print ''' Welcome to the game! Created by Meme Buddha
type 'start' to begin'''
print
prompt_sta ()
def prompt_sta ():
prompt_0 = input ('Type a Command, ')
try:
if prompt_0 == 'Start':
outside_house ()
elif prompt_0 == 'Begin':
print 'You need to drink bleach and look at spicy memes!'
print
prompt_sta ()
else:
print 'Type Start, throw it on him not me,ugh,lets try something else!'
print
prompt_sta ()
except ValueError:
print 'Type Start, throw it …Run Code Online (Sandbox Code Playgroud)