我有一个脚本来检查列表中是否有一个或多个相同的项目。这是代码:
items = ["Blue", "Black", "Red"]
def isUnique(item):
seen = list()
return not any(i in seen or seen.append(i) for i in item)
print(isUnique(items))
Run Code Online (Sandbox Code Playgroud)
如果给定列表中的所有项目都是唯一的,则打印“True”;如果列表中的一个或多个项目是唯一的,则打印“False”。有人可以any()为我解释一下脚本的部分吗,因为我不完全理解它是如何工作的?
我想这是一个非常简单的问题.
v1 = 1:10
v2 = c(2,4,7)
Run Code Online (Sandbox Code Playgroud)
(没有重复的数字.无需使用unique())
我想要一个包含v1中不在v2中的所有值的向量.
solution = c(1,3,5,6,8,9,10)
Run Code Online (Sandbox Code Playgroud)
我可以使用for循环来做到这一点,但我确信有更简单的解决方案.
我正在将Listview项目与Generic List项目与List.Any方法进行比较,如下所示:
foreach (ListViewItem itemRow in lstviewAddsheets.Items)
{
if (InvalidSheets.Any(x => x != null && x.FilePath == itemRow.Tag.ToString()))
{
//Math found
}
}
Run Code Online (Sandbox Code Playgroud)
请告诉我,如何获得与itemRow.Tag.ToString()匹配的InvalidSheets列表索引.
我有以下代码来计算素数
def isPrime(n):
if (n==2):
return True
elif n<=1 or n%2==0:
return False
else:
for i in xrange(3,n/2, 2):
if n%i:
return False
return True
mylist = [6,9]
mylist2= [3,5,7,11,12]
if not any(isPrime(x) for x in mylist):
print "No primes in list"
if not all(isPrime(x) for x in mylist2):
print "Not all are primes numbers"
Run Code Online (Sandbox Code Playgroud)
当我运行这个程序时,我明白了
python calculate_primes.py
Not all are primes numbers
Run Code Online (Sandbox Code Playgroud)
我没有得到的输出No primes in list.但如果我删除元素9中mylist,只有有6,它工作正常.
python calculate_primes.py
No primes in …Run Code Online (Sandbox Code Playgroud) 我试图找出一个列表中的任何数字是否存在于另一个列表中.我是按照以下方式做的:
print any([20.0,0.0,19.0,1.0]) in [20.0,0.0]
Run Code Online (Sandbox Code Playgroud)
这打印
False
Run Code Online (Sandbox Code Playgroud)
它应该是
True
Run Code Online (Sandbox Code Playgroud)
谁能解释为什么会这样?
我试图通过给它们一个特定的标签值来检查表单上的所有必需值是否有条目:
//HHSConsts.cs
public static int REQUIRED_FIELD = 1;
// FrmDelivery
public FrmDelivery(NewDelivery newDel)
{
InitializeComponent();
. . .
SetRequiredControls();
}
private void SetRequiredControls()
{
// Required controls will have a Tag value of "1"
textBoxCost.Tag = HHSConsts.REQUIRED_FIELD;
. . .
Run Code Online (Sandbox Code Playgroud)
然后,当用户对"保存"按钮进行控制时,将执行完整性检查:
private void buttonSave_Click(object sender, EventArgs args)
{
if (RequiredDataMissing())
{
. . .
private bool RequiredDataMissing()
{
return this.Controls.Cast<Control>().Any(ctrl => (ctrl.Tag.Equals(HHSConsts.REQUIRED_FIELD)) && (ctrl.Text.Equals(String.Empty)));
}
Run Code Online (Sandbox Code Playgroud)
根据我的说法,这就是说,"如果任何控件的标签为1(需要)但是为空,则返回false." 但是,它没有这样做(不过是返回一个bool val),而是与NRE崩溃.进一步来说:
//来自应用程序范围的异常处理程序:System.NullReferenceException:HHS.FrmDelivery.b__0(Control ctrl)中的NullReferenceException,位于HHS.FrmDelivery.RequiredDataMissing()的System.Linq.Enumerable.Any [TSource](IEnumerable 1 source, Func2谓词) .FrmDelivery.buttonSave_Click(Object sender,EventArgs args)...
为什么会这样; 我必须取消我的花哨裤子RequiredDataMissing()代码以使其按需工作吗?
当我尝试查询IList类型对象时,为什么以下代码不返回任何内容?
IList<Person> personRecord = new List<Person>
{
new Person{ Name = "Samuel"},
new Person{ Name = "Kenny Sammy"},
new Person{ Name = "Jame Sam Lee"}
};
var names = from b in personRecord
where personRecord.Any(d => d.Name == "Sam")
select b;
return names.ToList();
Run Code Online (Sandbox Code Playgroud) 这行抛出一个错误,说我没有定义,x即使我说这x是列表的一个元素:
any(i.isdigit() for i in x for x in [name.id for name in all.names])
Run Code Online (Sandbox Code Playgroud)
所以x是列表的一个字符串元素,我检查如果每个元素一些字符x,该元素x包含使用一个号码.isdigit().为什么这不起作用?
我想检查 a 是否HashMap<i32, i32>包含任何大于零的值。我有这个代码:
let has_demand = minimums.iter().any(|*x| x > 0)
Run Code Online (Sandbox Code Playgroud)
这失败了。问题出在|*x|,但我不知道该放什么。
我有一个有 2 个属性的类:
class ButtonPress():
def __init__(self, time, button):
self.time = time
self.button = button
Run Code Online (Sandbox Code Playgroud)
我创建一个列表,ButtonPress其中包含对象:
buttonlist = []
buttonlist.append(ButtonPress("25", "a")
buttonlist.append(ButtonPress("5", "b"))
Run Code Online (Sandbox Code Playgroud)
如何检查列表中的任何对象是否具有特定time值?我想:
if "25" in buttonlist[:]['time']
print("yaaay")
else:
print("feck")
Run Code Online (Sandbox Code Playgroud)
但这是行不通的。