我想删除字符串中的任何括号.为什么这不能正常工作?
>>> name = "Barack (of Washington)"
>>> name = name.strip("(){}<>")
>>> print name
Barack (of Washington
Run Code Online (Sandbox Code Playgroud) 我想抓住一个特定的http错误,而不是整个家庭中的任何一个..我想要做的是 -
import urllib2
try:
urllib2.urlopen("some url")
except urllib2.HTTPError:
<whatever>
Run Code Online (Sandbox Code Playgroud)
但我最终得到的是捕获任何类型的http错误,但我只想抓住指定的网页不存在!! 可能那是HTTP错误404 ..但我不知道如何指定只捕获错误404并让系统运行其他事件的默认处理程序..建议?
这比我遇到的要容易.我的问题是转换一个看起来像这样的字符串:
ABC12DEF3G56HIJ7
Run Code Online (Sandbox Code Playgroud)
成
12 * ABC
3 * DEF
56 * G
7 * HIJ
Run Code Online (Sandbox Code Playgroud)
在我的生活中,我不能使用REGEX匹配设计一组正确的循环.问题的关键在于代码必须是完全通用的,因为我不能假设[A-Z]片段将存在多长时间,也不能假设片段有多长[0-9].
谢谢你的帮助!
我有一本字典如下:
{'A':0,'C':0,'G':0,'T':0}
Run Code Online (Sandbox Code Playgroud)
我想创建一个包含许多字典的数组,如下所示:
[{'A':0,'C':0,'G':0,'T':0},{'A':0,'C':0,'G':0,'T':0},{'A':0,'C':0,'G':0,'T':0},...]
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
weightMatrix = []
for k in range(motifWidth):
weightMatrix[k] = {'A':0,'C':0,'G':0,'T':0}
Run Code Online (Sandbox Code Playgroud)
但当然它不起作用.有人能给我一个暗示吗?谢谢.
我写了这个简单的函数:
def padded_hex(i, l):
given_int = i
given_len = l
hex_result = hex(given_int)[2:] # remove '0x' from beginning of str
num_hex_chars = len(hex_result)
extra_zeros = '0' * (given_len - num_hex_chars) # may not get used..
return ('0x' + hex_result if num_hex_chars == given_len else
'?' * given_len if num_hex_chars > given_len else
'0x' + extra_zeros + hex_result if num_hex_chars < given_len else
None)
Run Code Online (Sandbox Code Playgroud)
例子:
padded_hex(42,4) # result '0x002a'
hex(15) # result '0xf'
padded_hex(15,1) # result '0xf'
Run Code Online (Sandbox Code Playgroud)
虽然这对我来说足够清楚并且适合我的用例(一个简单的打印机简单的测试工具),我不禁想到有很大的改进空间,这可以被压缩到非常简洁的东西.
还有哪些方法可以解决这个问题?
我正在尝试找出一种在java中拆分字符串的方法,它遵循如下模式:
String a = "123abc345def";
Run Code Online (Sandbox Code Playgroud)
结果如下:
x[0] = "123";
x[1] = "abc";
x[2] = "345";
x[3] = "def";
Run Code Online (Sandbox Code Playgroud)
但是我完全不知道如何才能实现这一目标.请有人帮帮我吗?我尝试在线搜索类似的问题,但是在搜索中正确地表达它是非常困难的.
请注意:字母和数字的数量可能会有所不同(例如,可能会出现像'1234a5bcdef'这样的字符串)
我试图将Python 3程序反向移植到2.7,我遇到了一个奇怪的问题:
>>> import io
>>> import csv
>>> output = io.StringIO()
>>> output.write("Hello!") # Fail: io.StringIO expects Unicode
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unicode argument expected, got 'str'
>>> output.write(u"Hello!") # This works as expected.
6L
>>> writer = csv.writer(output) # Now let's try this with the csv module:
>>> csvdata = [u"Hello", u"Goodbye"] # Look ma, all Unicode! (?)
>>> writer.writerow(csvdata) # Sadly, no.
Traceback (most recent call last):
File "<stdin>", …Run Code Online (Sandbox Code Playgroud) 如何从C#中删除字符串中的非字母数字字符和松散空格?
我想保留az,AZ,0-9等等(甚至不是"空格").
"Hello there(hello#)".Replace(regex-i-want, "");
Run Code Online (Sandbox Code Playgroud)
应该给
"Hellotherehello"
Run Code Online (Sandbox Code Playgroud)
我试过"Hello there(hello#)".Replace(@"[^A-Za-z0-9 ]", "");但空间仍然存在.
鉴于这个无害的小清单:
>>> lst = ['o','s','s','a','m','a']
Run Code Online (Sandbox Code Playgroud)
我的目标是使用以下方法之一以pythonically方式连接小恶魔:
A.普通ol'用于完成工作的字符串函数,简短,无需导入
>>> ''.join(lst)
'ossama'
Run Code Online (Sandbox Code Playgroud)
B. lambda,lambda,lambda
>>> reduce(lambda x, y: x + y, lst)
'ossama'
Run Code Online (Sandbox Code Playgroud)
C.全球化(什么都不做,导入一切)
>>> import functools, operator
>>> functools.reduce(operator.add, lst)
'ossama'
Run Code Online (Sandbox Code Playgroud)
请建议其他pythonic方法来实现这项宽宏大量的任务.
请排名(pythonic级别)和评级解决方案给出简明的解释.
在这种情况下,最pythonic解决方案是最好的编码解决方案吗?
我告诉我第1行和第5行(新的调试/编程,不确定是否有帮助)
def hi():
print 'hi'
def loop(f, n): #f repeats n times
if n<=0:
return
else:
f()
loop(f, n-1)
loop(hi(), 5)
hi
TypeError: 'NoneType' object is not callable
Run Code Online (Sandbox Code Playgroud)
为什么它会给我这个错误?