小编slo*_*oth的帖子

什么是Python的最小/最大的C#等效项

以下Python的最小/最大代码的C#等效项是什么:

pairs = [ (2,"dog"), (1, "cat"), (3, "dragon"), (1, "tiger") ]

# Returns the PAIR (not the number) that minimizes on pair[0]
min_pair = min(pairs, key=lambda pair:pair[0])

# this will return (1, 'cat'), NOT 1
Run Code Online (Sandbox Code Playgroud)

看来C#的Enumerable.Min非常接近。但是根据其MSDN文档,它总是返回最小化的VALUE(而不是原始对象)。我有什么想念的吗?

编辑


请注意 -我不倾向于首先通过排序来实现,因为排序(O(nlogn))在计算上比找到最小值(O(n))重。

另请注意 -词典也不是理想的方法。它不能处理键重复的情况-(1,“ cat”)和(1,“ tiger”)。

更重要的是,字典无法处理要处理的项目是复杂类的情况。例如,以年龄为关键字,找到一系列动物物体的最小值:

class Animal
{
  public string name;
  public int age;
}
Run Code Online (Sandbox Code Playgroud)

c# python

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

如何阻止任何滑块将哈希标记添加到URL

任何滑块都会添加像#&panel1-1网址末尾的哈希标记.

我试过hashtags:false但它不起作用.

有没有其他方法可以阻止它生成这些主题标签?

javascript jquery jquery-plugins anythingslider

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

无法从我的C#控制台应用程序中使用MongoDB

无法连接到服务器localhost:27017:命令'ping'失败:no>这样的cmd(响应:{"errmsg":"没有这样的cmd","ok":0.0}).


这可能是我在这里错过的基本内容......请帮帮我

以上是我得到的例外...
下面是我正在使用的代码(这是网站上给出的示例演示)注意:我的数据库正在运行.我可以从命令行创建和编辑数据库.

using System;
using System.Collections.Generic;

using MongoDB.Bson;
using MongoDB.Driver;
using MongoDB.Driver.Builders;

namespace MongoDBTest
{
    public class Entity
    {
        public ObjectId Id { get; set; }
        public string Name { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            var connectionString = "mongodb://localhost/?safe=true";
            var server = MongoServer.Create(connectionString);
            var database = server.GetDatabase("test");
            var collection = database.GetCollection<Entity>("entities");

            var entity = new Entity { Name = "Tom" };
            collection.Insert(entity);
            var id = entity.Id;

            var query = Query.EQ("_id", id); …
Run Code Online (Sandbox Code Playgroud)

c# mongodb

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

F#类型和循环

我正在研究一个创建一副牌的F#教程.列出了类型,但我无法理解如何遍历类型以创建完整套牌的地图.我期待做类似的事情

Foreach rank in ranks
   Foreach suit in suits
       somehow combine the two
   next suit
next rank
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?以下是创建的类型.

我想如果我把它们从类型更改为列表它们可以合并,对吧?那么,类型有什么意义呢?

type suits=
    |Spade=1
    |Heart=2
    |Club=3
    |Diamond=4

type ranks=
    |ValCard of int
    |Jack 
    |Queen
    |King

type deck= Deck of ranks * suits
Run Code Online (Sandbox Code Playgroud)

f# types loops

5
推荐指数
2
解决办法
290
查看次数

来自VB.net中属性的Xml节点值

我喜欢XML

<Categories>
    <category name="a">
        <SubCategory>1</SubCategory>
        <SubCategoryName>name1</SubCategoryName>
    </category>
    <category name="b">
        <SubCategory>2</SubCategory>
        <SubCategoryName>name2</SubCategoryName>
    </category>
</Categories>
Run Code Online (Sandbox Code Playgroud)

我如何获得的值<SubCategoryName><category name="a">

xml vb.net xmlnode xml-attribute

5
推荐指数
1
解决办法
3万
查看次数

如何实现粒子引擎

所以我制作了一个吸烟的粒子引擎,我很高兴,我认为它非常适合我的游戏.
我现在需要将它实现到我的游戏中,我遇到了一些麻烦.我想知道是否有人可以解释我将如何在我的游戏中使用我的粒子引擎.
我在下面添加了我的代码(用于冒烟和我的游戏文件).
我希望将粒子与游戏文件分开,但在我的游戏中调用它.
最终,我想在引擎中制作更多粒子效果,我也可以调用它.

有人可以帮忙吗?它可能需要一些调整才能工作.

粒子代码:

import pygame,random
from pygame.locals import *

xmax = 1000    #width of window
ymax = 600     #height of window

class Smoke():
    def __init__(self, startx, starty, col):
        self.x = startx
        self.y = random.randint(0, starty)
        self.col = col
        self.sx = startx
        self.sy = starty

    def move(self):
        if self.y < 0:
            self.x = self.sx
            self.y = self.sy
        else:
            self.y -= 1
        self.x += random.randint(-1, 2)

def main():
    pygame.init()
    screen = pygame.display.set_mode((xmax,ymax))
    black = (0,0,0)
    grey = (145,145,145) …
Run Code Online (Sandbox Code Playgroud)

python refactoring pygame particle-system

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

How to use user input to end a program?

I'm new to python and I am writing a program that converts Millimeters to Inches. Basically its a continuous loop that allows you to keep putting in numbers and get the correct converted measurement. I want to put an IF statement that will allow the user to type "end" to end the program instead of converting more units of measurement. How would I go about making this work (what python code allows you to exit a written program and can …

python if-statement python-3.x

5
推荐指数
2
解决办法
3万
查看次数

如何为主窗口设置最小和最大调整大小?

我有一个gui窗口,我可以调整大小.我想设置最小值调整值(以及最大值),以便在使窗口太小时不会吞下我的小部件,或者在调整太大时app不会看起来很难看.

在此输入图像描述

如何为主窗口设置最小和最大调整大小?

python tkinter python-2.7

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

编译Nimrod程序的继承类型中未声明的字段

我尝试编译以下代码:

type
  TPerson = object of TObject
    name*: string 
    age: int

  TStudent = object of TPerson
    id: int

var
  student: TStudent
  person: TPerson

student = TStudent(name: "Anton", age: 5, id: 2)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

错误:未声明的字段:'id'

怎么id没声明?代码示例直接来自教程.语言中的某些内容是否会在教程中反映出来?


另外,如果我尝试运行以下代码:

student = TStudent(name: "Anton")
echo student.name
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

SIGSEGV:非法存储访问.(尝试读取nil?)

为什么?

inheritance compiler-errors nimrod nim-lang

5
推荐指数
0
解决办法
232
查看次数

在 blit 期间不得锁定表面

我正在尝试将文本绘制到屏幕上位于二维数组正方形中的一堆矩形上方的空间中。当我尝试将文本绘制到屏幕上时,它显示“在位块传送期间不得锁定表面”。

我试过解锁,没什么区别。

import sys, time, random, pygame
from pygame import *
from time import time,sleep
pygame.init()
global isDragging, inDrag, rightDrag, lastDrag, inDragRight, mouseX,mouseY, borderHeight
isDragging = False
isAuto = False
inDrag= False
inDragRight = False
isFilling = False
done = False
lastDrag = None
rightDrag = None
tickTime = 300
font = pygame.font.SysFont(None, 12,False,False)
dragDelay = 2
BLACK    = (   0,   0,   0)
WHITE    = ( 255, 255, 255)
GREEN    = (   0, 255,   0)
RED      = ( 255,   0, …
Run Code Online (Sandbox Code Playgroud)

python fonts pygame screen rect

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