小编bin*_*hex的帖子

带有变量数学运算符的Python if语句

我正在尝试将变量数学运算符插入到if语句中,这是我在解析用户提供的数学表达式时要尝试实现的示例:

maths_operator = "=="

if "test" maths_operator "test":
       print "match found"

maths_operator = "!="

if "test" maths_operator "test":
       print "match found"
else:
       print "match not found"
Run Code Online (Sandbox Code Playgroud)

显然上面的失败了SyntaxError: invalid syntax.我已经尝试过使用exec和eval但是在if语句中都没有工作,我有什么选择来解决这个问题?

python parsing if-statement operators mathematical-expressions

16
推荐指数
2
解决办法
2017
查看次数

SQL炼金术不敏感的排序顺序

嗨我试图使用sql炼金术在sqlite数据库中为特定列实现升序排序,我遇到的问题是我要排序的列有大小写数据,因此排序顺序无法正常工作.

然后我发现了关于func.lower并尝试将其合并到查询中,但它或者错误或者只是不起作用,有人能给我一个如何使用sql炼金术做一个不区分大小写的升序排序的工作示例.

以下是我到目前为止(抛出错误): -

session.query(ResultsDBHistory).order_by(func.lower(asc(history_sort_order_column))).all()
Run Code Online (Sandbox Code Playgroud)

python 2.6.6 sql alchemy 0.7.10

python sqlite sqlalchemy

8
推荐指数
1
解决办法
3146
查看次数

python sqlalchemy 动态 order_by

如何根据变量按方向动态设置顺序,如在 asc 或 desc 中用于对 sqlite db 的 sqlalchemy 查询?

伪代码如下:

sort_order = "asc"

sql_session.query(ResultsDBHistory).order_by(sort_order(ResultsDBHistory.postsize)).limit(max_items_shown)
Run Code Online (Sandbox Code Playgroud)

如果我尝试这个它不会接受字符串。

python sqlite sqlalchemy

1
推荐指数
1
解决办法
2146
查看次数

在 bash 中迭代 2 个数组 - 仅循环每个数组中的第一个值

所以我试图在 bash 中循环遍历两个数组,但我正在努力让它工作,它似乎在第一次迭代时停止并且没有循环整个数组,请注意我正在使用 IFS,因为我想定义分隔符.

#!/bin/bash

protocol="udp,tcp-client,udp,"
port="1111,2222,3333,"

# split comma separated string into list from VPN_REMOTE_PROTCOL variable
IFS=',' read -a vpn_remote_protocol <<< "${protocol}"

# split comma separated string into list from VPN_REMOTE_PORT variable
IFS=',' read -a vpn_remote_port <<< "${port}"

for index in "${!vpn_remote[*]}"; do

        echo "iptables -A OUTPUT -o docker_int -p ${vpn_remote_protocol[$index]} --dport ${vpn_remote_port[$index]} -j ACCEPT"

done
Run Code Online (Sandbox Code Playgroud)

输出是:-

iptables -A OUTPUT -o docker_int -p udp --dport 1111 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)

我希望输出是:-

iptables -A OUTPUT -o docker_int -p udp --dport 1111 -j …
Run Code Online (Sandbox Code Playgroud)

arrays bash loops

1
推荐指数
1
解决办法
53
查看次数