我在Python 2.7.3中遇到语法错误,如下所示:
[s += 'Orig' for s in strs]
File "<stdin>", line 1
[s += 'Orig' for s in strs]
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
其中strs只是一个字符串列表,比如 ['a', 'b', 'c', 'd']
如果我将代码更改为:
[s + 'Orig' for s in strs]
Run Code Online (Sandbox Code Playgroud)
然后它工作:
['aOrig', 'bOrig', 'cOrig', 'dOrig']
Run Code Online (Sandbox Code Playgroud)
这背后的原因是什么?是因为列表理解中的s不可变吗?但它应该是一个暂时的对象,无论如何都会被丢弃,为什么不呢?
另外,做我想做的最有效的方法是什么?我查看了另一个链接:http://www.skymind.com/~ocrow/python_string/并尝试使用join,但是join并没有做我想要的事情; 它将字符串列表连接成一个字符串,而我想将一个字符串附加到字符串列表中.
我写的一些代码就是我观察到的:
n = 24, time = 3s
n = 25, time = 6s
n = 26, time = 12s
n = 27, time = 24s
n = 28, time = 48s
Run Code Online (Sandbox Code Playgroud)
只看这个数字,这段代码的bigO是什么?我想说2*n,但我们知道常数并不重要.它只是O(n)吗?看起来不像.
编辑:2 ^ N?
所以我有一个接口,UserService在包内调用service
我有两个简单的结构来表示 HTTP 调用的主体和响应。我有另一个实现UserService接口的结构。
我想放置这些结构,调用它们UserResponse并UserRequest在接口内部,以便其他服务可以使用它们进行 HTTP 调用。此外,请求和响应应该可用(struct UserReponse,不可用struct userResponse),以便代码的其他部分可以使用它们。
我在调用的接口中定义了一个函数 GetUser(request UserRequest) UserResponse
但是,每当我引用时,UserRequest我都必须使用service.UserRequest而不是service.UserService.UserRequest. 这很糟糕,因为我不希望与用户相关的对象进入服务命名空间。我希望每个与服务相关的数据都在其自己的界面、文件等下进行组织。不幸的是,如果我将其UserResponse放入UserService界面中,则会出现错误。所以我把它放在与 相同的级别UserService,这就是为什么它们显示为service.UserResponse. 我如何访问UserResponseas service.UserService.UserResponse?
因此,我首先从master分支到一个新分支:
git checkout -b branchA
在进入时branchA,branchB因为需要更改,所以分支到branchA了。
处理完后,branchB我想将更改折叠到branchA。我发现,我接触过branchA但未接触过的所有文件branchB现在都与自身发生冲突- branchA我执行git merge branchBfrom 之后,更改的行现在显示为冲突branchA。
合并这些更改的正确方法是什么?
顺便说一句,我已经推送到远程了,所以我不知道rebase是否可以在这里工作。