这是一个非常简单的掷骰子程序,它不断掷两个骰子,直到得到双 6。所以我的 while 语句结构如下:
while DieOne != 6 and DieTwo != 6:
Run Code Online (Sandbox Code Playgroud)
出于某种原因,该计划在DieOne获得 6 分后立即结束。DieTwo根本不考虑。
但是如果我将 while 语句中的theand改为 an or,程序就可以完美运行。这对我来说没有意义。
import random
print('How many times before double 6s?')
num=0
DieOne = 0
DieTwo = 0
while DieOne != 6 or DieTwo != 6:
num = num + 1
DieOne = random.randint(1,6)
DieTwo = random.randint(1,6)
print(DieOne)
print(DieTwo)
print()
if (DieOne == 6) and (DieTwo == 6):
num = str(num)
print('You got double 6s in …Run Code Online (Sandbox Code Playgroud) 我想从一个表中的一个列(value_to_count)中获得三个不同的平均值,其中所有这些平均值具有不同的WHERE子句(根据时间).
###services#### Table
service_id value_to_count time
----------- ----------------------- ---------
604 2054 04:04:50
604 3444 05:00:15
604 2122 07:12:50
604 2144 09:10:50
604 2001 13:12:53
602 2011 15:00:12
602 2115 17:22:35
602 1411 20:22:12
602 1611 21:04:52
602 2111 23:43:45
Run Code Online (Sandbox Code Playgroud)
我现在正在使用此查询来获得18到23之间的平均值:
SELECT
service_id AS service, AVG(value_to_count) AS primetime
FROM services
WHERE HOUR(time) BETWEEN 18 AND 23
GROUP BY service_id
Run Code Online (Sandbox Code Playgroud)
它给了我这样的结果:
### Result ####
service primetime
----------- --------------
604 2154
602 2444
Run Code Online (Sandbox Code Playgroud)
现在我想得到我已经得到的其他平均值.这一次,我只是想通过"HOUR(时间)之间的06和18"和平均"HOUR(时间)23与06"以及.
这是我想得到的结果形式:
### Wanted Result ####
service primetime …Run Code Online (Sandbox Code Playgroud) 我正在尝试根据其他列的几个条件向数据框添加新列.我有以下数据:
> commute <- c("walk", "bike", "subway", "drive", "ferry", "walk", "bike", "subway", "drive", "ferry", "walk", "bike", "subway", "drive", "ferry")
> kids <- c("Yes", "Yes", "No", "No", "Yes", "Yes", "No", "No", "Yes", "Yes", "No", "No", "Yes", "No", "Yes")
> distance <- c(1, 12, 5, 25, 7, 2, "", 8, 19, 7, "", 4, 16, 12, 7)
>
> df = data.frame(commute, kids, distance)
> df
commute kids distance
1 walk Yes 1
2 bike Yes 12
3 subway No 5
4 …Run Code Online (Sandbox Code Playgroud) if-statement r calculated-columns multiple-conditions dataframe
我已经尝试让这件事工作几个小时,但我无法让它工作:
if [ "$P" = "SFTP" -a "$PORT" != "22" ] || [ "$P" = "FTPS" && [ "$PORT" != "990" -a "$PORT" != "21" ] ] ; then
有人能帮我吗 ?我知道多个条件可以这样写:
if [ "$P" = "SFTP" ] && [ "$PORT" != "22" ]; then
但我怎样才能像第一个例子一样叠加这些条件呢?
bash if-statement nested multiple-conditions conditional-statements
嗨伙计们,我看到了所有的SO和谷歌,不能找到类似的东西......
我有一个数据帧x(基本上由一行和300列组成)和另一个具有相同大小但数据不同的数据帧.我想修改x,如果它与y具有不同的符号,则为0,并且x本身不为0,否则保持原样.所以这需要使用具有多个条件的np.where.然而,我见过的多个条件示例都使用标量,当我使用相同的语法时,它似乎不起作用(最终设置 - 所有 - 为零,没有错误).我担心隐藏在某处或其他地方的引用分配问题(移位后y是x,但据我所知,这个代码上面没有上游问题)任何想法?
我试图调试的代码是:
tradesmade[i:i+1] = np.where((sign(x) != sign(y)) & (sign(x) != 0), 0, x)
Run Code Online (Sandbox Code Playgroud)
它只返回一堆零.我也试过了
tradesmade[i:i+1][(sign(x) != sign(y)) * (sign(x) != 0)] = 0
Run Code Online (Sandbox Code Playgroud)
但这似乎也不起作用.我已经在这几个小时了,我完全失去了.请帮忙!
我正在尝试根据多个条件从df中提取行,在选择任何行之前必须满足所有条件.
我的df
columns = ['is_net', 'is_pct', 'is_mean', 'is_wgted', 'is_sum']
index = ['a','b','c','d']
data = [['True','True','False','False', 'False'],
['True','True','True','False', 'False'],
['True','True','False','False', 'True'],
['True','True','False','True', 'False']]
df = pd.DataFrame(columns=columns, index=index, data=data)
df
is_net is_pct is_mean is_wgted is_sum
a True True False False False
b True True True False False
c True True False False True
d True True False True False
Run Code Online (Sandbox Code Playgroud)
我的条件必须采用以下格式:
conditions = {'is_net': 'True',
'is_pct': 'True',
'is_mean': 'False',
'is_wgted': 'True',
'is_sum': 'False'}
Run Code Online (Sandbox Code Playgroud)
预期产量:
is_net is_pct is_mean is_wgted is_sum
d True True False …Run Code Online (Sandbox Code Playgroud) 我想构建一个表单的查询:
select * from some_table
where
(field1 = 'x' or field2 = 'y')
and
(field3 = 'z' or field4 = 'w')
Run Code Online (Sandbox Code Playgroud)
从阅读文档,我认为它应该看起来像这样Mongoid:
SomeTable.or({:field1 => 'x'}, {:field2 => 'y'})
.and # or is it .intersect?
.or({:field3 => 'z'}, {:field4 => 'w'})
Run Code Online (Sandbox Code Playgroud)
但那不起作用 - mongo选择器只是所有字段的"$或".这样做的正确方法是什么?谢谢.
我也很欣赏它的反转,例如 - 如何执行此查询:
select * from some_table
where
(field1 = 'x' and field2 = 'y')
or
(field3 = 'z' and field4 = 'w')
Run Code Online (Sandbox Code Playgroud) 我正在尝试在逻辑运算符两侧的 if 语句中使用多个参数。我首先从 || 开始 运算符,按预期工作:
var a = 'apple', b = 'banana', c = 'cherry';
if (a == 'banana' || a == 'apple' || b == 'banana' || b == 'apple') {
console.log('example 1') // returns
}
if ((a || b) == 'banana' || (a || b) == 'apple') {
console.log('example 2') // returns
}
if (a == ('apple' || 'banana') || b == ('apple' || 'banana')) {
console.log('example 3') // returns
}
if ((a || b) == ('apple' …Run Code Online (Sandbox Code Playgroud) javascript if-statement multiple-conditions logical-operators
所以我有以下条件
sessions = sessions.Where(y => y.session.SESSION_DIVISION.Any(x => x.DIVISION.ToUpper().Contains(SearchContent)) ||
y.session.ROOM.ToUpper().Contains(SearchContent) ||
y.session.COURSE.ToUpper().Contains(SearchContent));
Run Code Online (Sandbox Code Playgroud)
我想根据一个字符串是否为空将其分成多行,例如:
if (!String.IsNullOrEmpty(Division)) {
sessions = sessions.Where(y => y.session.SESSION_DIVISION.Any(x => x.DIVISION.ToUpper().Contains(SearchContent)));
}
if (!String.IsNullOrEmpty(Room)) {
// this shoudl be OR
sessions = sessions.Where(y => y.session.ROOM.ToUpper().Contains(SearchContent));
}
if (!String.IsNullOrEmpty(course)) {
// this shoudl be OR
sessions = sessions.Where(y => y.session.COURSE.ToUpper().Contains(SearchContent));
}
Run Code Online (Sandbox Code Playgroud)
如果您发现我想添加多个OR条件,则根据Room,course和Division字符串是否为空来拆分。
我目前有一个CASE语句,用于检查某些任务是否已完成,然后返回下一个任务的日期.由于任务是有序的,因此每个WHEN语句变得更长,检查先前的每个任务以查看它们是否完整.出于某种原因,在第一个WHEN语句之后,它直接跳到ELSE(它应该满足第二个或第三个WHEN的条件).
CASE
WHEN T.PRNAME = 'TECH PEP MEETING DATE' AND T.PRSTATUS != 2 THEN (SELECT TO_CHAR(MAX(T.PRFINISH),'DD/MM/YY') FROM PRTASK T WHERE T.PRPROJECTID = INV_INVESTMENTS.ID AND Upper(T.PRNAME) = 'TECH PEP MEETING DATE' AND PRISMILESTONE = 1)
WHEN (T.PRNAME = 'TECH PEP MEETING DATE' AND T.PRSTATUS = 2) AND (T.PRNAME = 'BRU MEETING DATE' AND T.PRSTATUS != 2) THEN (SELECT TO_CHAR(MAX(T.PRFINISH),'DD/MM/YY') FROM PRTASK T WHERE T.PRPROJECTID = INV_INVESTMENTS.ID AND Upper(T.PRNAME) = 'BRU MEETING DATE' AND PRISMILESTONE = 1)
WHEN (T.PRNAME = 'TECH PEP …Run Code Online (Sandbox Code Playgroud) if-statement ×3
python ×3
sql ×3
dataframe ×2
pandas ×2
.net ×1
average ×1
bash ×1
boolean ×1
case ×1
javascript ×1
linq ×1
mongoid ×1
nested ×1
r ×1
syntax ×1
where-clause ×1
while-loop ×1