Is it possible to use a operator map to auto generate a specified operator? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) The Ask Question Wizard is Live! Data science time! April 2019 and salary with experienceHow do I efficiently iterate over each entry in a Java Map?Sort a Map<Key, Value> by valuesWhich equals operator (== vs ===) should be used in JavaScript comparisons?Does Python have a ternary conditional operator?Is there a “null coalescing” operator in JavaScript?What is the !! (not not) operator in JavaScript?What is the “-->” operator in C++?What are the basic rules and idioms for operator overloading?What does the C ??!??! operator do?Why don't Java's +=, -=, *=, /= compound assignment operators require casting?
How do I automatically answer y in bash script?
Estimate capacitor parameters
Sorting inherited template fields
Are my PIs rude or am I just being too sensitive?
If A makes B more likely then B makes A more likely"
Can a non-EU citizen traveling with me come with me through the EU passport line?
Training a classifier when some of the features are unknown
Why use gamma over alpha radiation?
grandmas drink with lemon juice
Can a zero nonce be safely used with AES-GCM if the key is random and never used again?
Was credit for the black hole image misattributed?
Is it possible to boil a liquid by just mixing many immiscible liquids together?
How is simplicity better than precision and clarity in prose?
Mortgage adviser recommends a longer term than necessary combined with overpayments
What did Darwin mean by 'squib' here?
How can I make names more distinctive without making them longer?
Complexity of many constant time steps with occasional logarithmic steps
What are the performance impacts of 'functional' Rust?
Direct Experience of Meditation
90's book, teen horror
Unexpected result with right shift after bitwise negation
Determine whether f is a function, an injection, a surjection
How does the Nova's Burn power work at the 7-9 level?
What do you call the holes in a flute?
Is it possible to use a operator map to auto generate a specified operator?
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
The Ask Question Wizard is Live!
Data science time! April 2019 and salary with experienceHow do I efficiently iterate over each entry in a Java Map?Sort a Map<Key, Value> by valuesWhich equals operator (== vs ===) should be used in JavaScript comparisons?Does Python have a ternary conditional operator?Is there a “null coalescing” operator in JavaScript?What is the !! (not not) operator in JavaScript?What is the “-->” operator in C++?What are the basic rules and idioms for operator overloading?What does the C ??!??! operator do?Why don't Java's +=, -=, *=, /= compound assignment operators require casting?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
For I have some rules saved in mysql db.
+----+---------+-------+----------+-------+-------+
| id | rule_id | field | operator | value | order |
+----+---------+-------+----------+-------+-------+
| 1 | 1 | 5 | 2 | 8 | 1 |
| 2 | 1 | 10 | 2 | 2 | 2 |
| 3 | 1 | 4 | 2 | 1 | 3 |
...
# operator 2 is equal to GREATER_THAN for example
Then I want to filter data list using the related rule operator, as below's code showed
operator = "LESS_THAN" # get from mysql db
target_value = 8
list1 = ['clicks':5, "views":7, 'id':1234, 'clicks':5, "views":9, 'id':1235]
filtered_list = [i['id'] for i in filter(lambda item: item['views'] > target_value, list1)]
# filter the list according to operator > ,target_value 8 for example.
Is it possible to use a map relationship like
operation_map =
"LESS_THAN" : <,
"GREATER_THAN": >,
"EQUAL":=
to make something like below happed instead of if operator == 'GREATER_THAN' : pass
syntax?
filtered_list = [i['id'] for i in filter(lambda item: item['views'] operation_map[operator] target_value, list1)]
Any help or insight would be greatly appreciated, great thanks.
python dictionary operators
add a comment |
For I have some rules saved in mysql db.
+----+---------+-------+----------+-------+-------+
| id | rule_id | field | operator | value | order |
+----+---------+-------+----------+-------+-------+
| 1 | 1 | 5 | 2 | 8 | 1 |
| 2 | 1 | 10 | 2 | 2 | 2 |
| 3 | 1 | 4 | 2 | 1 | 3 |
...
# operator 2 is equal to GREATER_THAN for example
Then I want to filter data list using the related rule operator, as below's code showed
operator = "LESS_THAN" # get from mysql db
target_value = 8
list1 = ['clicks':5, "views":7, 'id':1234, 'clicks':5, "views":9, 'id':1235]
filtered_list = [i['id'] for i in filter(lambda item: item['views'] > target_value, list1)]
# filter the list according to operator > ,target_value 8 for example.
Is it possible to use a map relationship like
operation_map =
"LESS_THAN" : <,
"GREATER_THAN": >,
"EQUAL":=
to make something like below happed instead of if operator == 'GREATER_THAN' : pass
syntax?
filtered_list = [i['id'] for i in filter(lambda item: item['views'] operation_map[operator] target_value, list1)]
Any help or insight would be greatly appreciated, great thanks.
python dictionary operators
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54
add a comment |
For I have some rules saved in mysql db.
+----+---------+-------+----------+-------+-------+
| id | rule_id | field | operator | value | order |
+----+---------+-------+----------+-------+-------+
| 1 | 1 | 5 | 2 | 8 | 1 |
| 2 | 1 | 10 | 2 | 2 | 2 |
| 3 | 1 | 4 | 2 | 1 | 3 |
...
# operator 2 is equal to GREATER_THAN for example
Then I want to filter data list using the related rule operator, as below's code showed
operator = "LESS_THAN" # get from mysql db
target_value = 8
list1 = ['clicks':5, "views":7, 'id':1234, 'clicks':5, "views":9, 'id':1235]
filtered_list = [i['id'] for i in filter(lambda item: item['views'] > target_value, list1)]
# filter the list according to operator > ,target_value 8 for example.
Is it possible to use a map relationship like
operation_map =
"LESS_THAN" : <,
"GREATER_THAN": >,
"EQUAL":=
to make something like below happed instead of if operator == 'GREATER_THAN' : pass
syntax?
filtered_list = [i['id'] for i in filter(lambda item: item['views'] operation_map[operator] target_value, list1)]
Any help or insight would be greatly appreciated, great thanks.
python dictionary operators
For I have some rules saved in mysql db.
+----+---------+-------+----------+-------+-------+
| id | rule_id | field | operator | value | order |
+----+---------+-------+----------+-------+-------+
| 1 | 1 | 5 | 2 | 8 | 1 |
| 2 | 1 | 10 | 2 | 2 | 2 |
| 3 | 1 | 4 | 2 | 1 | 3 |
...
# operator 2 is equal to GREATER_THAN for example
Then I want to filter data list using the related rule operator, as below's code showed
operator = "LESS_THAN" # get from mysql db
target_value = 8
list1 = ['clicks':5, "views":7, 'id':1234, 'clicks':5, "views":9, 'id':1235]
filtered_list = [i['id'] for i in filter(lambda item: item['views'] > target_value, list1)]
# filter the list according to operator > ,target_value 8 for example.
Is it possible to use a map relationship like
operation_map =
"LESS_THAN" : <,
"GREATER_THAN": >,
"EQUAL":=
to make something like below happed instead of if operator == 'GREATER_THAN' : pass
syntax?
filtered_list = [i['id'] for i in filter(lambda item: item['views'] operation_map[operator] target_value, list1)]
Any help or insight would be greatly appreciated, great thanks.
python dictionary operators
python dictionary operators
asked Mar 22 at 7:46
jia Jimmyjia Jimmy
453316
453316
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54
add a comment |
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54
add a comment |
1 Answer
1
active
oldest
votes
Use the operator
module:
import operator
operator_map = 'LESS_THAN': operator.lt,
'GREATER_THAN': operator.gt,
'EQUAL': operator.eq
filtered_list = [i['id'] for i in filter(lambda item: operator_map[operator](item['views'], target_value), list1)]
Add other operators as necessary.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55295007%2fis-it-possible-to-use-a-operator-map-to-auto-generate-a-specified-operator%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Use the operator
module:
import operator
operator_map = 'LESS_THAN': operator.lt,
'GREATER_THAN': operator.gt,
'EQUAL': operator.eq
filtered_list = [i['id'] for i in filter(lambda item: operator_map[operator](item['views'], target_value), list1)]
Add other operators as necessary.
add a comment |
Use the operator
module:
import operator
operator_map = 'LESS_THAN': operator.lt,
'GREATER_THAN': operator.gt,
'EQUAL': operator.eq
filtered_list = [i['id'] for i in filter(lambda item: operator_map[operator](item['views'], target_value), list1)]
Add other operators as necessary.
add a comment |
Use the operator
module:
import operator
operator_map = 'LESS_THAN': operator.lt,
'GREATER_THAN': operator.gt,
'EQUAL': operator.eq
filtered_list = [i['id'] for i in filter(lambda item: operator_map[operator](item['views'], target_value), list1)]
Add other operators as necessary.
Use the operator
module:
import operator
operator_map = 'LESS_THAN': operator.lt,
'GREATER_THAN': operator.gt,
'EQUAL': operator.eq
filtered_list = [i['id'] for i in filter(lambda item: operator_map[operator](item['views'], target_value), list1)]
Add other operators as necessary.
answered Mar 22 at 7:55
gmdsgmds
6,151525
6,151525
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55295007%2fis-it-possible-to-use-a-operator-map-to-auto-generate-a-specified-operator%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Why would you want to do that? operators are more readable and if your class objects have implemented them you can use just a lambda function to sort them.
– Farhood ET
Mar 22 at 7:54