我创建了这个简单的函数:
def alpha_1(x):
#num = 5
counter = 65
out = []
for i in range(len(x)):
if x.isalpha():
num = ord(x[i])
out.append(chr(num+1 if 65 <= num <= 89 or 97 <= num <= 121 else counter))
else:
print("Not a character!")
return 0
return "".join(out)
在这里,当某些值到达{if {1}}的单行“ if语句”时,我需要增加计数器,以便对于不属于指定范围的值,我不会得到相同的'A'范围。我知道可以使用常规的“ if”语句来实现。
我只想知道在单行语句中有什么方法可以实现这一目标?
答案 0 :(得分:1)
createAuthrorizationHeader(): HttpHeaders {
let headers = new HttpHeaders();
const token = localStorage.getItem('access_token');
headers = headers.set('access_token', token);
return headers
}
insert(product_data: any) {
let headers = this.createAuthrorizationHeader();
console.log(headers);
return this.httpClient.post("/seller/add", product_data, { headers: headers })
.pipe(tap(res => {
console.log(res);
}))
}
您的意思是这样的吗?
如果语句为true,则计数器加5;如果语句为false,计数器加0。
答案 1 :(得分:1)
python中的整数是不可变的,这意味着更改像counter
这样的变量所指向的值的唯一方法是重新分配它。
counter = 5
counter = counter + 5 # tadaa!
没有办法解决,分配是statements,这意味着您不能将它们用作某物的值(例如if
语句)。
在Python 3.8出现之前,您将无法做一行陈述和更改值,那时专用的assignment expression将成为该语言的一部分,这将允许你想要什么:
if (counter := (counter + 5)) > something_else:
# do something, also counter is now 5 bigger than before
但是除非您想在本地build the current cpython master,否则必须等到21.10.2019开始使用它。