小编pro*_*eek的帖子

使用Python在同一进程中运行三个命令

我需要在Win32上运行这三个命令以进行性能分析/代码覆盖率报告.

vsperfcmd /start:coverage /output:run.coverage
helloclass
vsperfcmd /shutdown
Run Code Online (Sandbox Code Playgroud)

我不能一个地运行一个命令,因为应该在vsperfcmd的相同进程中分析helloclass可执行文件.

我想到的是制作一个批处理文件来运行这三个命令,并在Python中运行批处理文件.但是,我认为python应该有一种方法来执行启动shell和运行命令的等效操作.

  • 问:如何在Python中以相同的进程运行命令?
  • 问:或者,我如何在Python中启动命令shell并运行命令?

解决了

import subprocess
cmdline = ["cmd", "/q", "/k", "echo off"]
cmd = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
batch = b"""\
rem vsinstr -coverage helloclass.exe /exclude:std::*
vsperfcmd /start:coverage /output:run.coverage
helloclass
vsperfcmd /shutdown
exit
"""
cmd.stdin.write(batch)
cmd.stdin.flush() # Must include this to ensure data is passed to child process
result = cmd.stdout.read()
print(result)
Run Code Online (Sandbox Code Playgroud)

python process launch

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

使用Python在ElementTree中添加兄弟元素

用XML等

<a>
  <b>
  </b>
</a>
Run Code Online (Sandbox Code Playgroud)

我需要添加类似的兄弟姐妹

<a>
  <b>
  </b>
  <b'>
  </b'>
</a>
Run Code Online (Sandbox Code Playgroud)

ElementTree是否具有添加兄弟节点的功能?如果没有,我想我需要一个函数来获取父节点并添加一个子节点,我该怎么办呢?

python xml elementtree

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

根据元素对C#List进行排序

我有C#类如下:

public class ClassInfo {
    public string ClassName;
    public int BlocksCovered;
    public int BlocksNotCovered;


    public ClassInfo() {}

    public ClassInfo(string ClassName, int BlocksCovered, int BlocksNotCovered) 
    {
        this.ClassName = ClassName;
        this.BlocksCovered = BlocksCovered;
        this.BlocksNotCovered = BlocksNotCovered;
    }
}
Run Code Online (Sandbox Code Playgroud)

我有ClassInfo()的C#List如下

List<ClassInfo> ClassInfoList;
Run Code Online (Sandbox Code Playgroud)

如何基于BlocksCovered对ClassInfoList进行排序?

c# sorting element

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

"'之前的'primary-expression'.' 令牌错误"以g ++为单位

我有这个C++代码来生成"primary-expression before".令牌'错误与g ++编译器.它与cl(MSVC)编译器编译好.

template<typename T>
class A : public std::auto_ptr<T>
{
    typedef std::auto_ptr<T> Super;
public:
    A() : Super() { }
    A(T* t) : Super(t) { }
    A(AP<T>& o) : Super(o) { }
    operator bool() { return !!Super.get(); } <--- error!
};
Run Code Online (Sandbox Code Playgroud)

这段代码出了什么问题?

c++ g++

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

使用Python在同一个字符串中多次重复匹配()

我有一个正则表达式来寻找:ABC:`hello`模式.这是代码.

format =r".*\:(.*)\:\`(.*)\`"
patt = re.compile(format, re.I|re.U)
m = patt.match(l.rstrip())
if m:
    ...
Run Code Online (Sandbox Code Playgroud)

当模式在一行中发生一次时它很有效,但是有一个例子":tagbox:`Verilog`:tagbox:`Multiply`:tagbox:`VHDL`".它只找到最后一个.

我怎样才能找到所有这三种模式?

编辑

根据Paul Z的回答,我可以使用这段代码

format = r"\:([^:]*)\:\`([^`]*)\`"
patt = re.compile(format, re.I|re.U)
for m in patt.finditer(l.rstrip()):
    tag, value = m.groups()  
    print tag, ":::", value
Run Code Online (Sandbox Code Playgroud)

结果

tagbox ::: Verilog
tagbox ::: Multiply
tagbox ::: VHDL
Run Code Online (Sandbox Code Playgroud)

python regex

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

窗口关闭时如何退出MonoMac应用程序?

我可以使用- (BOOL)applicationShouldTerminateAfterLastWindowClosed:方法在窗口关闭时使用应用程序委托中的方法退出cocoa app.

我怎么能用MonoMac做同样的事情?一般来说,如何将objective-c方法映射到MonoMac的C#函数?

macos mono monomac

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

通过翻译ML的等价物来实现F#

我想将这个ML代码翻译成F#.

fun take ([], i) = []
  | take (x::xs, i) = if i > 0 then x::take(xs, i-1) 
                                else [];
Run Code Online (Sandbox Code Playgroud)

我试过这个

let rec take n i =
  match n,i with 
    | [], i -> []
    | x::xs, i -> if i > 0 then x::take(xs, i-1)
                           else [];

let val = take [1;2;3;4] 3
Run Code Online (Sandbox Code Playgroud)

还有这个

let rec take input =
  match input with 
    | ([], i) -> []
    | (x::xs, i) -> if i > 0 then x::take(xs, i-1) …
Run Code Online (Sandbox Code Playgroud)

f# ml sml take

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

如何在VS2010 IDE中添加System.ComponentModel.Composition.dll?

使用命令行,我用/r:VS810添加如下引用.

csc Program.cs /r:System.ComponentModel.Composition.dll /r:SharedLibrary.dll
Run Code Online (Sandbox Code Playgroud)

如何在VS2010 IDE中添加引用?

我试图右键单击Solution Explorer,然后单击"Add Reference ...",但我找不到System.ComponentModel.Composition.

在此输入图像描述

mef visual-studio-2010 visual-studio

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

将堆叠面板并排放置

我需要将控件分组并将它们并排放置.我想出了这个代码来使用多个StackPanel来做到这一点.

<Window x:Class="xamlTests.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="310" Width="525">
    <Grid>

        <StackPanel x:Name="_ribbonRadioButtonPanel" Orientation="Vertical">
            <CheckBox Content="Signed" Height="16" Name="Signed" Checked="Signed_Checked" Margin="10,5"/>
            <StackPanel x:Name="_wordLength" Orientation="Horizontal">
                <TextBox Height="18" Name="textBoxWordLength" Width="30" Margin="10,5"/>
                <TextBlock Height="20" Name="textBlockWordLength" Text="Word Length" Width="120"/>
            </StackPanel>
            <StackPanel x:Name="_integerWordLength" Orientation="Horizontal">
                <TextBox Height="18" Name="textBoxIntegerWordLength" Width="30" Margin="10,5"/>
                <TextBlock Height="20" Name="textBlockIntegerWordLength" Text="Integer Word Length" Width="120"/>
            </StackPanel>
        </StackPanel>

        <StackPanel x:Name="_ribbonRadioButtonPanel2">
            <StackPanel x:Name="_max" Orientation="Horizontal">
                <TextBox Height="18" Name="maxTextBox" Width="100" Margin="10,5"/>
                <TextBlock Height="20" Name="maxTextBlock" Text="Max" Width="120"/>
            </StackPanel>
            <StackPanel x:Name="_min" Orientation="Horizontal">
                <TextBox Height="18" Name="minTextBox" Width="100" Margin="10,5"/>
                <TextBlock Height="20" Name="minTextBlock" Text="Min" …
Run Code Online (Sandbox Code Playgroud)

wpf xaml visual-studio-2010

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

使用ngen.exe创建和分发本机映像

我试图使用ngen.exe从CIL二进制文件中获取本机映像. 这个网站解释说我可以在%WINDIR%\assembly执行ngen命令时获取本机图像ngen install abc.exe,但是我在计算机中找不到.我使用Windows 7 64bit和VS2010.

  • 在运行ngen后我在哪里/如何找到原生图像?
  • 我可以分发本机映像而不是CIL二进制文件吗?

c# ngen

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

标签 统计

python ×3

c# ×2

visual-studio-2010 ×2

c++ ×1

element ×1

elementtree ×1

f# ×1

g++ ×1

launch ×1

macos ×1

mef ×1

ml ×1

mono ×1

monomac ×1

ngen ×1

process ×1

regex ×1

sml ×1

sorting ×1

take ×1

visual-studio ×1

wpf ×1

xaml ×1

xml ×1