小编gri*_*yvp的帖子

部分列表在Python中解压缩

在Python中,赋值运算符可以将列表或元组解包为变量,如下所示:

l = (1, 2)
a, b = l # Here goes auto unpack
Run Code Online (Sandbox Code Playgroud)

但我需要在左侧列出与右侧列表中的项目计数完全相同的名称数量.但有时候我不知道右边列表的大小,例如,如果我使用split().

例:

a, b = "length=25".split("=") # This will result in a="length" and b=25
Run Code Online (Sandbox Code Playgroud)

但是以下代码将导致错误:

a, b = "DEFAULT_LENGTH".split("=") # Error, list has only one item
Run Code Online (Sandbox Code Playgroud)

有可能以某种方式解压缩上面示例中的列表所以我可以得到一个="DEFAULT_LENGTH"并且b等于None或不设置?直截了当的方式看起来有点长:

a = b = None
if "=" in string :
  a, b = string.split("=")
else :
  a = string
Run Code Online (Sandbox Code Playgroud)

python

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

Visual Studio的免费vim加载项?

可能重复:
任何人都知道Visual Studio的任何(免费/开源)VI集成?

是否有任何模拟vim文本编辑模式的免费Visual Studio插件?现在我只发现了ViEmu,但它只有100美元.

vim visual-studio

36
推荐指数
0
解决办法
7729
查看次数

检查变量是否在python中定义的简单方法?

有没有办法检查是否定义了具有指定名称的变量(类成员或独立)?例:

if "myVar" in myObject.__dict__ : # not an easy way
  print myObject.myVar
else
  print "not defined"
Run Code Online (Sandbox Code Playgroud)

python

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

如何配置postgresql以便它接受登录+密码验证?

我有一个新鲜的Ubuntu 10.10与所有更新和PostgreSQL 8.4安装
为了对PostgreSQL接受登录+密码连接,我已经通过其配置:

sudo su postgres
psql
ALTER USER postgres WITH PASSWORD 'password';
CREATE DATABASE myapp;
\q
exit
sudo vi /etc/postgresql/8.4/main/pg_hba.conf
change "local all all indent" to "local all all trust"
Run Code Online (Sandbox Code Playgroud)

但是,令人惊讶的是,这不起作用!命令

psql -U postgres password
Run Code Online (Sandbox Code Playgroud)

评估错误:

psql: FATAL:  Ident authentication failed for user "postgres"
Run Code Online (Sandbox Code Playgroud)

任何提示我如何使其psql -U工作?

postgresql ubuntu

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

是否可以在C#内置Action <>委托中使用ref类型?

C#有内置委托Action<>Func<>.是否可以为此代表使用'ref'类型参数?例如,这段代码:

public delegate void DTest( ref Guid a );
public event DTest ETest;
Run Code Online (Sandbox Code Playgroud)

会编译.但如果我使用Action<>,它将无法编译:

public event Action< ref Guid > ETest;
Run Code Online (Sandbox Code Playgroud)

任何提示?

c#

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

jQuery ajax:如何防止chrome DevTools中的404错误垃圾邮件?

我正在通过jQuery ajax与CouchDB进行通信,并且REST合约预计会出现'404'错误.但对于每个以'404','412'结尾的请求,Google Chrome会在DevTools控制台中写一条红色错误行,如下所示:

chrome DevTools

是否有可能以某种方式配置jQuery,因此'404'不是给定请求的错误?假错误垃圾邮件杂乱输出,我可以错过真正的错误或一些console.log看着数百个假的'404'和'412'"错误":).

ajax jquery google-chrome-devtools

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

在Vim中更改波浪号(〜)颜色

当Vim启动时,它会显示~空行的波形符号().有没有办法改变它的颜色?

vim

23
推荐指数
4
解决办法
6450
查看次数

如何在Windows上创建补丁文件?

在Windows上,我有两个源文件,并希望创建一个有差异的补丁,就像这个.但我不确定,这个补丁的格式是什么,以及用什么应用程序来创建它?GNU diff输出与我在上面链接中看到的补丁非常不同.

patch

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

SQLite中的SELECT*,COUNT(*)

如果我在SQLite中执行标准查询:

SELECT * FROM my_table
Run Code Online (Sandbox Code Playgroud)

我按预期在表格中获得了所有记录.如果我执行以下查询:

SELECT *, 1 FROM my_table
Run Code Online (Sandbox Code Playgroud)

我按预期获得所有记录,最右边的列在所有记录中保持"1".但是,如果我执行查询:

SELECT *, COUNT(*) FROM my_table
Run Code Online (Sandbox Code Playgroud)

我只获得一行(最右边的列是正确的计数).为什么有这样的结果?我在SQL方面不是很好,可能会有这种行为吗?这对我来说似乎很奇怪和不合逻辑:(.

sql sqlite

23
推荐指数
4
解决办法
10万
查看次数

Python和ctypes:如何正确地将"指针指针"传递给DLL?

我有一个DLL分配内存并返回它.DLL中的函数是这样的:

void Foo( unsigned char** ppMem, int* pSize )
{
  * pSize = 4;
  * ppMem = malloc( * pSize );
  for( int i = 0; i < * pSize; i ++ ) (* ppMem)[ i ] = i;
}
Run Code Online (Sandbox Code Playgroud)

另外,我有一个从我的DLL访问此函数的python代码:

from ctypes import *
Foo = windll.mydll.Foo
Foo.argtypes = [ POINTER( POINTER( c_ubyte ) ), POINTER( c_int ) ]
mem = POINTER( c_ubyte )()
size = c_int( 0 )
Foo( byref( mem ), byref( size ) ]
print size, …
Run Code Online (Sandbox Code Playgroud)

python ctypes

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