我具有替换预定变量的字符串的代码,但是看来我的代码效率不高,因为如果要替换的字符串越多,替换函数越多,该如何处理?
import numpy as np
from timeit import timeit
u = np.random.uniform
points = np.array([[u(0, 50), u(0, 50)] for _ in range(37000000)], dtype=np.half)
p = 'from __main__ import points, to_cube; to_cube(points)'
timeit(p, number=1)
# output: 17.94858811999
感谢帮助
答案 0 :(得分:1)
我回答了我的问题
Public Function ReplaceString(sString As String) As String
Const Tag1 = "{"
Const Tag2 = "}"
Dim sItem() As String, i As Long
sString = Replace(sString, "\n", vbNewLine) 'Replace new line
sItem = Split(sString, Tag1)
For i = 1 To UBound(sItem)
sItem(i - 1) = Split(sItem(i), Tag2, 2)(0)
Next
ReDim Preserve sItem(UBound(sItem) - 1)
For i = 0 To UBound(sItem)
sString = Replace(sString, "{" & sItem(i) & "}", CallByName(Me, sItem(i), VbGet))
Next
ReplaceString = sString
End Function
希望这会在其他情况下帮助其他人