小编Pat*_*ner的帖子

从 C# 运行 powershell 脚本

我正在尝试在我的应用程序中使用 c# 编写一个 powershell 脚本。问题是,如果我用 c# 运行脚本,它就不能工作,但如果我手动运行它,它就可以工作。

那是脚本: DISM /online /Enable-Feature /Featurename:NetFx3 /All

该脚本在 Windows 服务器上启用框架 3.5。来源

我的代码:

纽格: System.Management.Automation

using (PowerShell PowerShellInstance = PowerShell.Create()) 
{ 
    PowerShellInstance.AddScript("DISM /online /Enable-Feature /Featurename:NetFx3 /All ");

    // begin invoke execution on the pipeline
    IAsyncResult result = PowerShellInstance.BeginInvoke();

    // do something else until execution has completed.
    // this could be sleep/wait, or perhaps some other work
    while (result.IsCompleted == false)
    {
        Console.WriteLine("Waiting for pipeline to finish...");
        Thread.Sleep(1000);

        // might want to place a timeout …
Run Code Online (Sandbox Code Playgroud)

c# powershell

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

用altair填充2行之间

我想突出显示Altair中2条线之间的区域。 结果:线条填充

我试图查看解决方案是否正在使用,mark_area()但找不到如何指定数据下限。

我的数据(几行):

index   created     pct_pl_transit  pct_pl_transit_max
0   1970-01-01 00:00:00     49.627697   60.056873
2   1970-01-01 01:00:00     43.800967   55.301460
4   1970-01-01 02:00:00     41.440480   49.757740
6   1970-01-01 03:00:00     37.879753   40.352226
8   1970-01-01 04:00:00     36.691287   19.429075
Run Code Online (Sandbox Code Playgroud)

我的图表:

base=alt.Chart(lien_traf_gest_traf_lapi).encode(x=alt.X('created', axis=alt.Axis(title='Heure', format='%Hh%M')))
line_pct_pl_lapi=base.mark_line(color='blue').encode(y=alt.Y('pct_pl_transit:Q', axis=alt.Axis(title='Nombre de PL SIREDO')))
line_pct_max=base.mark_line().encode(y='pct_pl_transit_max')
line_pct_max+line_pct_pl_lapi
Run Code Online (Sandbox Code Playgroud)

python altair

6
推荐指数
1
解决办法
170
查看次数

Linux Mint 19上的Python3.7'No module named apt_pkg'错误

当我尝试运行一些测试代码时,我的教授给了我在Linux Mint 19上使用Python3.7的提示,但出现以下错误

RuntimeError: Bad code object in .pyc file
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes
  File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report
  File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging
  File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
    import apt
  File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg' …
Run Code Online (Sandbox Code Playgroud)

python linux linux-mint python-3.x

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

我的 for 循环没有根据条件删除数组中的项目?Python

我有一个数组(移动)。我想迭代我的移动数组并为每个元素设置一个条件。条件是,如果元素中的任何一个数字为负数,那么我想从 moves 数组中删除该元素。循环无法正确删除我的项目。但是如果我通过完全相同的循环运行它两次,那么它将删除最后一个元素。这对我来说毫无意义。使用Python 3.6

moves = [[3,-1],[4,-1],[5,-1]]
for move in moves:
    if move[0] < 0 or move[1] < 0:
        moves.remove(move)
Run Code Online (Sandbox Code Playgroud)

如果运行此代码,移动将以 [[4,-1]] 的结果结束,但是如果您再次通过完全相同的 for 循环运行此结果,则结果为 []

我还尝试使用更多元素来执行此操作,但由于某种原因,它只是没有抓住某些元素。这是 .remove() 的错误吗?这就是我尝试过的...(在此我尝试检测非负数以查看这是否是问题的一部分,但事实并非如此)

moves = [[3,1],[4,1],[5,1],[3,1],[4,1],[5,1],[3,1],[4,1],[5,1]]
    for move in moves:
        if move[0] < 2 or move [1] < 2:
            moves.remove(move)
Run Code Online (Sandbox Code Playgroud)

上面代码的结果是

moves = [[4, 1], [3, 1], [4, 1], [5, 1]]
Run Code Online (Sandbox Code Playgroud)

有任何想法吗???

python python-3.x

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

将字符串拆分为列表包含字母子弹列表

我的字符串包含 text = "a) Baghdad, Iraq b) United Arab Emirates (possibly)"

我想在列表中将其拆分为 ["Baghdad, Iraq","United Arab Emirates (possibly)"]

我使用的代码没有提供我想要的结果

re.split('\\s*([a-zA-Z\\d][).]|•)\\s*(?=[A-Z])', text)
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题

python string python-3.x

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

python 中的调用者到底是什么?

如果这个问题太基本/显而易见,我深表歉意,但在此处和数据模型文档搜索后我找不到合理的答案。

我的问题很简单,Python 3 中的调用者到底是什么?有严格的定义吗?

例如,我知道调用另一个函数的函数称为调用者。所以:

def f1():
    pass
def f2():
    f1()
Run Code Online (Sandbox Code Playgroud)

f2 是 f1 的调用者。但是赋值语句呢?

x = f2()
Run Code Online (Sandbox Code Playgroud)

xa 是 f2 的调用者吗?它也是f1的调用者吗?显然,函数定义末尾的 return 语句向调用者返回一个值,因此我假设在这种情况下 x 既是 f2 又是 f1 的调用者,但是我只想检查是否没有更深层次的调用者/调用者的技术含义是什么?

我发现这个问题我不明白Python中的“返回”以及调用者是什么?,但我无法得到太多理解。

python python-3.x

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

加入正则表达式搜索的输出

  • 我有一个在文件中查找数字的正则表达式.
  • 我把结果放在一个列表中

问题是它为每个找到的单个数字在新行上打印每个结果.它也忽略了我创建的列表.

我想要做的是将所有数字放在一个列表中.我使用了join()但它不起作用.

代码:

def readfile():
    regex = re.compile('\d+')
for num in regex.findall(open('/path/to/file').read()):
    lst = [num]
    jn = ''.join(lst)    
    print(jn)
Run Code Online (Sandbox Code Playgroud)

输出:

122
34
764
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

PyLint在shutil.rmtree(...)的错误处理程序函数中引发了“放错地方的举动”

上下文: 我正在使用删除包含只读文件的目录树:shutil.rmtree(delDir, ignore_errors = False, onerror = readOnlyErrorHandler)

烦恼: PyLint(在VS Code内部)将raisereadOnlyErrorHandler函数内的命令标记为

  • pylint(misplaced-bare-raise)的“ raise语句不在except子句中”

问题:是否有办法在不禁用整个文件lint的情况下得到此警告?

def readOnlyErrorHandler(func, path, exc_info):
  import errno
  if func in (os.rmdir, os.unlink, os.remove) and exc_info[1].errno == errno.EACCES:
    print (f"Retry '{func.__name__}' after chmod 0o777 on '{path}'")
    os.chmod(path, 0o777) 
    func(path)
  else:
    # marked as 'The raise statement is not inside an except clause' 
    # by pylint(misplaced-bare-raise)
    raise  # purpose: rethrow the other errors that brought me here
Run Code Online (Sandbox Code Playgroud)

系统:Windows,Python 3.6.3

测试:

from …
Run Code Online (Sandbox Code Playgroud)

python pylint shutil python-3.x

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

从十六进制字符串构造 Numpy 数组

我有一个"89-50-4E-47-0D-0A-1A-0A-00-00-00-0D-49"具体的十六进制字符串,它将包含图像的数据。

我想将其转换为 Numpy 数组,或者可能从所述数据重建 OpenCV 图像。

还将提供宽度和高度,以便知道 Numpy 数组的尺寸。

如何从上面的字符串构造一个 Numpy 数组?

python numpy numpy-ndarray

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

Pandas:添加新列,计算此人达到一天最高分的频率

它是pandas/Dataframe,它包含了每个人每天的所有分数,我想多加一列来收集它有多少次得分最高(可能不止一个人,有些数据是nan

import pandas as pd
import numpy as np

data = np.array([['','day1','day2','day3','day4','day5'],
                ['larry',1,4,7,3,5],
                ['niko',2,-1,3,6,4],
                ['tin',np.nan,5,5, 6,7]])
                
df = pd.DataFrame(data=data[1:,1:],
                  index=data[1:,0],
                  columns=data[0,1:])
print(df)
Run Code Online (Sandbox Code Playgroud)

输出

      day1 day2 day3 day4 day5
larry    1    4    7    3    5
niko     2   -1    3    6    4
tin    nan    5    5    6    7
Run Code Online (Sandbox Code Playgroud)

预期结果是(拉里:1 次,尼科:2 次,锡:3 次)

      times_of_top day1 day2 day3 day4 day5
larry            1    1    4    7    3    5
niko             2    2   -1    3    6    4
tin              3  nan    5    5    6    7
Run Code Online (Sandbox Code Playgroud)

niko …

python numpy dataframe pandas

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