如何在python中打印时填充列表?
例如,我有以下列表:
mylist = ['foo', 'bar']
Run Code Online (Sandbox Code Playgroud)
我想用逗号将这个填充打印到四个索引.我知道我可以执行以下操作将其作为逗号和空格分隔列表:
', '.join(mylist)
Run Code Online (Sandbox Code Playgroud)
但是如何用'x'将它填充到四个索引,所以输出如下:
foo, bar, x, x
Run Code Online (Sandbox Code Playgroud) 我有以下字符串:
'100% California Grown Olives, Water, Salt And Ferrous Gluconate (An,Iron, Derivative),asasd, sadasda'
Run Code Online (Sandbox Code Playgroud)
我试图拆分它,/,/但只有当 它不在括号内时,例如,在这种情况下,结果应该是:
100% California Grown Olives
Water
Salt And Ferrous Gluconate (An,Iron, Derivative)
asasd
sadasda
Run Code Online (Sandbox Code Playgroud)
谢谢,
我有一个循环给我三个变量
matteGroup
matteName
object
Run Code Online (Sandbox Code Playgroud)
我想做一个嵌套的dicionary保存所有数据,如:
dictionary{matteGroup: {matteName: obj1, obj2, ob3} }
Run Code Online (Sandbox Code Playgroud)
我正在逐个检查对象,所以我想创建matteGroup它,如果它不存在,创建matteName它,如果它不exixst,然后创建或追加对象的名称.我尝试了许多解决方案,如普通字典,defaultdict和我在网上找到的一些自定义类,但我无法正常完成.我有一个很好的嵌套我无法追加,反之亦然.
这是循环
dizGroup = {}
dizName = {}
for obj in mc.ls(type='transform'):
if mc.objExists(obj + ('.matteGroup')):
matteGroup = mc.getAttr(obj + ('.matteGroup'))
matteName = mc.getAttr(obj + ('.matteName'))
if matteGroup not in dizGroup:
dizGroup[matteGroup] = list()
dizGroup[matteGroup].append(matteName)
if matteName not in dizName:
dizName[matteName] = list()
dizName[matteName].append(obj)
Run Code Online (Sandbox Code Playgroud)
有了这个,我分别得到了两本词典,但不是那么有用!任何提示?
谢谢
我有一个大约100个文件的列表,我想阅读并匹配一个单词.这是我写的代码片段.
import re
y = 'C:\\prova.txt'
var1 = open(y, 'r')
for line in var1:
if re.match('(.*)version(.*)', line):
print line
var1.close()
Run Code Online (Sandbox Code Playgroud)
每次我尝试将元组传递给y时都会出现此错误:
TypeError: coercing to Unicode: need string or buffer, tuple found.
Run Code Online (Sandbox Code Playgroud)
(我认为这open()不接受任何元组但只接受字符串)
所以我可以让它使用文件列表?
先感谢您!!!!
我的目标是让正则表达式代码获取电话号码并删除不需要的字符。
import re
strs = 'dsds +48 124 cat cat cat245 81243!!'
match = re.search(r'.[ 0-9\+\-\.\_]+', strs)
if match:
print 'found', match.group() ## 'found word:cat'
else:
print 'did not find'
Run Code Online (Sandbox Code Playgroud)
它仅返回:
+48 124
Run Code Online (Sandbox Code Playgroud)
我如何退还全部电话号码?
我有3个列表,我想找到第1 /第2和第2 /第3之间的差异并打印它们.
这是我的代码:
n1 = [1,1,1,2,3]
n2 = [1,1,1,2] # Here the 3 is not found ("3" is not present in n1 at all)
n3 = [1,1,2] # here 1 is not found (there are fewer "1"s in n3 than in n2)
for x in n1:
if x not in n2:
print x
for m in n2:
if m not in n3:
print m
Run Code Online (Sandbox Code Playgroud)
但我得到的输出只有3.
如何使它输出1和3?我也尝试使用sets,但它只是3再次打印.
我有用户定义的字符串(html格式化字符串要保存并在web中使用),需要找到一种方法来替换单个字母后面的每个空格 .
例如"this is a string"应该成为"this is a string",
"bla bla b l abla b la blabla"应该成为"bla bla b l abla b la blabla"...等...
我是Python的新手,我希望用它来解析文本文件.该文件具有以下格式的250-300行:
---- Mark Grey (mark.grey@gmail.com) changed status from Busy to Available @ 14/07/2010 16:32:36 ----
---- Silvia Pablo (spablo@gmail.com) became Available @ 14/07/2010 16:32:39 ----
Run Code Online (Sandbox Code Playgroud)
我需要将以下信息存储到该文件中所有条目的另一个文件(excel或文本)中
UserName/ID Previous Status New Status Date Time
Run Code Online (Sandbox Code Playgroud)
所以我的结果文件看起来应该是这样的
Mark Grey/mark.grey@gmail.com Busy Available 14/07/2010 16:32:36
Silvia Pablo/spablo@gmail.com NaN Available 14/07/2010 16:32:39
Run Code Online (Sandbox Code Playgroud)
提前致谢,
任何帮助将非常感激
请考虑以下Python代码:
>>> re.search(r'.*(99)', 'aa99bb').groups()
('99',)
>>> re.search(r'.*(99)?', 'aa99bb').groups()
(None,)
Run Code Online (Sandbox Code Playgroud)
我不明白为什么我在第二个例子中没有抓到99.
我正在解释我实际上希望做的事情,以防有更高级别的建议完全避免这个问题.
我有我保存在三个数组科学数据:wave,flux,error.它们代表波长,通量和误差值.阵列长约4000个元素(并且数组的索引号对应于检测器的像素数).
我做了各种各样的测试,但是对于这个例子,我们只是说我做了2次测试,我需要有效地屏蔽掉相关的数组.
masks = []
masks.append(wave > 5500.35)
masks.append(flux / wave > 8.5)
Run Code Online (Sandbox Code Playgroud)
Subquestion:我可以很容易地做2面罩案例,如:
fullmask = [x[0] and x[1] for x in zip(masks[0], masks[1])]
Run Code Online (Sandbox Code Playgroud)
但是对于任意数量的面具来说,这样做的方法是什么?
真正的问题:有没有对所有口罩适用于每一个阵列(的方式wave,flux,error),并保持原有的索引号?通过"保留原始索引号"我的意思是我原则上可以取掩蔽波阵列的平均像素数(原始索引号)?也就是说:如果wave[98:99]唯一没有掩盖的部分,平均像素将是98.5.
元问题:这是做这些事情的最好方法吗?
编辑
所以这里有一些样本数据可供使用.
wave = array([5000, 5001, 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, 5010,
5011, 5012, 5013, 5014, 5015, 5016, 5017, 5018, 5019, 5020, 5021,
5022, 5023, 5024, 5025, 5026, 5027, 5028, 5029, 5030, 5031, …Run Code Online (Sandbox Code Playgroud)