这个简单的代码只是试图用冒号替换分号(在i指定的位置)不起作用:
for i in range(0,len(line)):
if (line[i]==";" and i in rightindexarray):
line[i]=":"
Run Code Online (Sandbox Code Playgroud)
它给出了错误
line[i]=":"
TypeError: 'str' object does not support item assignment
Run Code Online (Sandbox Code Playgroud)
我如何解决这个问题用冒号代替分号?使用replace不起作用,因为该函数不带索引 - 可能有一些我不想替换的分号.
例
在字符串中我可能有任意数量的分号,例如"Hei der !; Hello there;!;"
我知道我想要替换哪些(我在字符串中有他们的索引).使用replace不起作用,因为我无法使用索引.
当我偶然发现以下行时,我正在对一些遗留代码进行现代化改造:
rounded_val = (len(src_string) / 2) * 2
它正在做的是利用Python的奇怪整数除法,将字符串的长度值(如果是奇数)舍入到它之前的第一个偶数值.但整数除法即将在Python 3上改变,我需要改变这一行.起初我想到了这个:
rounded_val = (len(src_string) / 2) * 2
但是那个叫rounded_val = (len(src_string) / 2) * 2
3次.然后我想到使用原始的想法,但使用地板除法运算符rounded_val = (len(src_string) / 2) * 2
,并认为它可能不太相容,这样做,我应该使用rounded_val = (len(src_string) / 2) * 2
(但后来我需要另一个导入rounded_val = (len(src_string) / 2) * 2
).
我可能在思考这个问题,但在Python中这样做的最佳方法是什么?
PS:输出需要是整数.
所以我正在做一个网络聊天作为一个侧面项目,我遇到的一个问题是使复制和粘贴消息的用户体验友好.
现在,所有元素都在自己的标签内组织,间隔开并用CSS规则分隔,如果你尝试复制聊天日志的一部分,它就会出现23:49userHello World
.
我想到的解决方案是使用零宽度制表符分隔它们,仍然可以通过文本选择来拾取,并且粘贴为原始文本时只是一个普通的制表符.这不仅会在复制粘贴操作中将其分开,而且还可以使用它进行解析awk
.
如何	
使用CSS或任何字符修改可打印的制表符(),使其对布局不可见,但仍然会在文本选择中被拾取?
我正在尝试编写一个应用程序来暴力破解一个完全小写、仅字母、6 个字符长的密码,其中有 2 个字母重复两次。我尝试使用itertools.product(string.lowercase, 6)
,但即使我有一台非常“强大”的计算机,它也没有足够的 RAM 来完成计算,这是因为itertools
在返回之前实际上构建了一个完整的列表。
所以然后我想到有一个像这样的列表[0, 0, 0, 0, 0, 0]
,它会从右到左计数,每次索引达到 26 时,它都会返回到 0,并且它左边的槽会增加 1,除非我还没有找到一种编码方法。
我已经尝试解决这个问题有一段时间了,转向这里是我最后的手段,任何算法技巧都非常受欢迎。我很抱歉提出这种“家庭作业”类型的问题,但我真的被这个问题惊呆了。