我想知道我的对象的所有嵌套对象和键值对是否为空。
例如,
const x = {
a:"",
b:[],
c:{
x:[]
},
d:{
x:{
y:{
z:""
}
}
}
};
Run Code Online (Sandbox Code Playgroud)
这应该是一个空对象,如果其中任何一个包含单个值,那么它应该是非空的。
我有a = ['1','2','','17']
我想对其应用最小/最大操作。我无法使用 pandas/numpy。
但是,我将其转换为浮点数,但无法使用 float() 函数将 '' 转换为浮点数。如果我有 None 而不是 '',也会发生同样的事情。
我从来没有在matlab中遇到过这个问题,所以我迷失了python。
我可以使用 将其转换为浮点数[float(i) for i in var if i],但我需要保持相同的大小以便稍后处理索引。此方法将删除空字符串,这不是我想要的,我需要一个值(显然不是 None),我可以在其上应用平均值/最大/最小值等
IsEmpty为类似容器的类实现语句的首选方法是什么?
它可能是一个简单的方法,bool IsEmpty()或者你可以有一些gettable属性IsEmpty/ Empty.
我理解这可能是个人选择的问题,但在这种情况下你会坚持使用属性或方法吗?
我知道我们可以实现PHP的可数接口来确定函数count()的工作方式以及使用像数组这样的对象的Iterator接口.
是否可以实现某种接口(或任何其他方式)来更改对象上的empty()行为?
从本质上讲,这是我希望能够做到的:
<?php
class test {
function __empty() {
if (count($this->data) > 0) {
return false;
}
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
真是个不错的选择!
我将代码从java转换为C++有一个小问题
我试图检查是否设置了2d数组,这是我的java代码
for(int area_y = y -1 ;area_y > 0 ;area_y--)
{
for(int area_x = 0 ;area_x < x; area_x++)
{
if(area[area_x][area_y] == 0)
{
System.out.print(" "); // this is printed
// if area[area_x][area_y] is not set
}
else
System.out.print(area[area_x][area_y]);
}
System.out.println();
}
Run Code Online (Sandbox Code Playgroud)
这是我的c ++代码,这是有效的
for(int area_y = y -1 ;area_y > 0 ;area_y--)
{
for(int area_x = 0 ;area_x < x; area_x++)
{
if(area[area_x][area_y] == 0) // this line does not work as
// the next line is not …Run Code Online (Sandbox Code Playgroud) 我需要找出创建的表是否包含条目.
我需要的是,
if (TableIsEmpty) then
do_something
else
do_something_else;
Run Code Online (Sandbox Code Playgroud)
我为此目的写的是:
Function IsTableEmpty:Boolean;
Var
DataSource : string;
Begin
DataSource :=
'Provider=Microsoft.Jet.OLEDB.4.0'+
';Data Source=c:\mydb.mdb'+
';Persist Security Info=False';
Form2.ADOConnection1.ConnectionString := DataSource;
Form2.ADOConnection1.LoginPrompt := False;
Form2.ADOCommand1.Connection := Form2.ADOConnection1;
Form2.ADOTable1.ConnectionString := DataSource;
Form2.ADOTable1.Connection := Form2.ADOConnection1;
if (Form2.ADOTable1.IsEmpty)then
result := true
else
result := false;
End;
Run Code Online (Sandbox Code Playgroud)
但是无论表的状态如何,此函数都返回true!
编辑*** 修改代码:
Function IsTableEmpty:Boolean;
Var
DataSource, cs : string;
Begin
DataSource :=
'Provider=Microsoft.Jet.OLEDB.4.0'+
';Data Source=c:\Users.mdb'+
';Persist Security Info=False';
Form2.ADOConnection1.ConnectionString := DataSource;
Form2.ADOConnection1.LoginPrompt := False;
Form2.ADOCommand1.Connection := Form2.ADOConnection1;
Form2.ADOTable1.Connection := Form2.ADOConnection1; …Run Code Online (Sandbox Code Playgroud) 我是否知道测试Object的正式方法(来自服务器的响应),如果它是一个空对象?
目前,我的做法是利用jQuery.
this.http.post(url, data, {headers: headers}).then(
result =>
{
if (!$.isEmptyObject(result)) {
-- run code here --
}else{
-- log warning --
}
}
Run Code Online (Sandbox Code Playgroud)
我认为这是正统的,并希望找到一种仅使用打字稿的方法.
谢谢.
我想检查DataFrame是否为空:
BTC_ewma_24 ETH_ewma_24 DASH_ewma_24
24 4011.235578 334.597119 281.15
25 4011.285662 334.591056 281.15
26 4011.373673 334.603479 281.15
27 4011.453068 334.614686 281.15
28 4011.526571 334.624813 281.15
29 4011.591356 334.633980 281.15
30 4011.650075 334.642288 281.15
31 4011.703366 334.649828 281.15
Run Code Online (Sandbox Code Playgroud)
我试过if(self.mean_exp.bool() == False):
但它回答了我:
ValueError: The truth value of a DataFrame is ambiguous.
Use a.empty, a.bool(), a.item(), a.any() or a.all().
Run Code Online (Sandbox Code Playgroud)
好像它甚至没有注意到我使用过 .bool()
然后我用a.empty它并且它回答了我:
AttributeError: 'list' object has no attribute 'empty'
Run Code Online (Sandbox Code Playgroud) 我想检查变量是否为null.
我的代码是:
list_Data="2018-01-15 10:00:00.000|zQfrkkiabiPZ||04|
2018-01-15 10:00:00.000|zQgKLANvbRWg||04|
2018-01-15 10:00:00.000|zQgTEbJjWGjf||01|
2018-01-15 10:00:00.000|zQgwF1YJLnAT||01|"
echo "list_Data"
if [[ -z "list_Data" ]]
then
echo "not Empty"
else
echo "empty"
fi
Run Code Online (Sandbox Code Playgroud)
输出是:
2018-01-15 10:00:00.000|zQfrkkiabiPZ||04|
2018-01-15 10:00:00.000|zQgKLANvbRWg||04|
2018-01-15 10:00:00.000|zQgTEbJjWGjf||01|
2018-01-15 10:00:00.000|zQgwF1YJLnAT||01|
empty
Run Code Online (Sandbox Code Playgroud)
变量包含值但我总是空消息的问题请帮忙.
我测试的情况下,如果我的对象是空的,所以故意我做了一个查询已在数据库中没有比赛,这应该评估我否则,如果语句,但是我没有得到任何回应的控制台.
我究竟做错了什么?
user.loginUser = (jUserData, res) => {
var aData = [
jUserData.email,
jUserData.mobile_number,
0
]
var sQuery = 'SELECT * FROM users WHERE email = ? AND mobile_number = ? AND active = ?'
function isEmpty(obj) {
for (var key in obj) {
if (obj.hasOwnProperty(key))
return false;
}
return true;
}
db.each(sQuery, aData, function (err, jRow) {
console.log(jRow)
if (err) {
console.log('BAD, user not logged in')
return …Run Code Online (Sandbox Code Playgroud)