当我说英语时,我真正的意思是与 gobbledy gook 相对。我并不是想过滤掉领班或西班牙语或其他什么。
所以基本上我想测试一个单词是否完全由可发音的音节组成。
所以这是一个正则表达式:
if re.match(r'^([^aeiouy]{1,3}[aeiouy]{1,3}[^aeiouy]{1,3}|[aeiouy]{1,3}[^aeiouy]{1,3})+
print "gobbledy gook!!!"
Run Code Online (Sandbox Code Playgroud)
检查什么:C=辅音 V=元音
CVC 或 VC 字符组。组的长度为 1-3 个字符
这有意义吗?,the_word) 是 None: xCodexBlockxPlacexHolderx
检查什么:C=辅音 V=元音
CVC 或 VC 字符组。组的长度为 1-3 个字符
这有道理吗?
我发现这个问题有很多不同的答案,似乎都没有用(?!)
这就是我所拥有的:
my %FORM = ["a"=>"0AD", "b"=>"johnny manziel", "c"=>"lincoln"];
#my @k = keys (%FORM);
#for my $iter (@k) { print "$iter\n"; }
#for my $key (keys %FORM) {
# print "\t";
# print $FORM{$key};
# print "\n";
#}
while ( ($key, $value) = each %FORM )
{
print "key: $key, value: $FORM{$key}\n";
}
Run Code Online (Sandbox Code Playgroud)
典型输出:
./testprinthash.pl
key: ARRAY(0x13a2998), value:
Run Code Online (Sandbox Code Playgroud)
我总是得到一个数组而不是一个键值
我的代码是测试我试图弄清楚为什么p & ~(p & (p - 1))不测试2的指数.无论如何,解释器in = 1因为某种原因不喜欢while循环之前.
码:
def getnumber(str):
num=0
for i in str:
zz = ord(i)-48
if zz<0 or zz>9:
num=-1
break
else:
num=(num*10)+zz
return num
def testexp2(p):
table = {1:1,2:2,4:3,8:4,16:5,32:6,64:7,128:8,256:9}
if p & ~(p & (p - 1)):
print "yes"
else:
print "no"
in = 1
while in is not -1:
in = raw_input("> ")
in = getnumber(in)
if in>-1:
testexp2(in)
else:
print "\nDone\n\n"
Run Code Online (Sandbox Code Playgroud) 我有这个功能:
def get_starting_centroids(centroids,size,num):
for i in range(0,num):
temp = []
for j in range(0,size):
random.seed(time.clock())
g = random.random()
g = g*.85 + .15
print "random: %i" %g
temp.append(g)
centroids.append(temp)
return centroids
Run Code Online (Sandbox Code Playgroud)
print告诉我它总是返回0.如果我random.random()在python提示符下测试,我得到一个随机值.我不明白是什么导致了这种差异
来自perlootut:
my $cage = File::MP3->new(
path => 'mp3s/My-Body-Is-a-Cage.mp3',
content => $mp3_data,
last_mod_time => 1304974868,
title => 'My Body Is a Cage',
);
Run Code Online (Sandbox Code Playgroud)
我不明白这里发生了什么.它看起来是自动生成,如果是这样,那么new会传递类名和对新哈希的引用吗?