删除Python中字符串连接时间隔的额外空格
我有一个字符串,它让我的Python脚本崩溃:
"625 625 QUAIL DR UNIT B"
我需要删除这个字符串中间多余的空格,所以我正在尝试使用下面这个分割和连接的脚本:
import arcgisscripting
import logging
logger = logging.getLogger()
gp = arcgisscripting.create(9.3)
gp.OverWriteOutput = True
gp.Workspace = "C:\ZP4"
fcs = gp.ListWorkspaces("*","Folder")
for fc in fcs:
print fc
rows = gp.UpdateCursor(fc + "//Parcels.shp")
row = rows.Next()
while row:
Name = row.GetValue('SIT_FULL_S').join(s.split())
print Name
row.SetValue('SIT_FULL_S', Name)
rows.updateRow(row)
row = rows.Next()
del row
del rows
4 个回答
2
我觉得你可以用正则表达式来找到所有有两个或更多空格的地方,然后把它们替换成一个空格。
这可以用更简短的代码来实现:
re.sub(r'\s{2,}', ' ', your_string)
3
使用 re 模块...
>>> import re
>>> str = 'A B C'
>>> re.sub(r'\s+', ' ', str)
'A B C'
4
你的源代码和错误信息不一致,错误提示说你没有定义变量 SIT_FULL_S
。
我猜测你想要的是:
Name = ' '.join(row.GetValue('SIT_FULL_S').split())