小编jam*_*lak的帖子

Python:按索引过滤列表

在Python中,我有一个元素aList列表和一个索引列表myIndices.有什么方法可以一次性检索所有项目中aList的值作为索引myIndices吗?

例:

>>> aList = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> myIndices = [0, 3, 4]
>>> aList.A_FUNCTION(myIndices)
['a', 'd', 'e']
Run Code Online (Sandbox Code Playgroud)

python indexing list filter

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

合并共享共同元素的列表

我的输入是一个列表列表.其中一些有共同的要素,例如.

L = [['a','b','c'],['b','d','e'],['k'],['o','p'],['e','f'],['p','a'],['d','g']]
Run Code Online (Sandbox Code Playgroud)

我需要合并所有共享一个共同元素的列表,并且只要没有更多具有相同项目的列表,就重复此过程.我考虑过使用布尔运算和while循环,但无法提出一个好的解决方案.

最终结果应该是:

L = [['a','b','c','d','e','f','g','o','p'],['k']] 
Run Code Online (Sandbox Code Playgroud)

python merge join list boolean-expression

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

可以从列表理解中返回两个列表吗?

是否可以从列表理解中返回两个列表?嗯,这显然不起作用,但是类似于:

rr, tt = [i*10, i*12 for i in xrange(4)]
Run Code Online (Sandbox Code Playgroud)

所以rrtt都是从搜索结果列表i*10i*12分别.非常感谢

python list-comprehension

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

在第n次出现给定字符时拆分字符串

在第n次出现给定分隔符后是否有Python方法来分割字符串?

给定一个字符串:

'20_231_myString_234'
Run Code Online (Sandbox Code Playgroud)

它应该被拆分为(在第二次出现之后,分隔符为'_'):

['20_231', 'myString_234']
Run Code Online (Sandbox Code Playgroud)

或者是计算,拆分和加入的唯一方法吗?

python string split

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

解压缩list/tuple中的前两个元素

有没有办法在python中这样做:

a, b, = 1, 3, 4, 5
Run Code Online (Sandbox Code Playgroud)

然后:

>>> a
1
>>> b
3
Run Code Online (Sandbox Code Playgroud)

(上面的代码不起作用,因为它会抛出ValueError: too many values to unpack.)

python

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

为什么Python有格式函数和格式方法

formatbuiltins中的函数似乎是str.format专门用于格式化单个对象的方法的子集.

例如.

>>> format(13, 'x')
'd'
Run Code Online (Sandbox Code Playgroud)

显然更喜欢

>>> '{0:x}'.format(13)
'd'
Run Code Online (Sandbox Code Playgroud)

和IMO它确实看起来更好,但为什么不只是str.format在每种情况下使用,以使事情更简单?这两个都是介绍的,2.6所以必须有一个很好的理由同时拥有它们,它是什么?

编辑:我是问str.formatformat,不是我们没有(13).format

python string format python-2.6 built-in

35
推荐指数
2
解决办法
9964
查看次数

Django发送电子邮件

我知道有20个类似于我的问题,但我已经尝试了一天以上的电子邮件与Django一起工作.

我收到此错误:[Errno 111] Connection refused当我尝试发送电子邮件时

这是我创建电子邮件并尝试在我的视图中发送它的地方:

try:
    msg = EmailMessage(subject, message, from_email, [receiver])
    msg.content_subtype = "html"
    msg.send()
Run Code Online (Sandbox Code Playgroud)

我的设置文件如下:

EMAIL_HOST = "localhost"
DEFAULT_FROM_EMAIL = "myemail@gmail.com"
EMAIL_PORT = 25
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
Run Code Online (Sandbox Code Playgroud)

我已经尝试过使用测试发送python -m smtpd -n -c DebuggingServer localhost:1025并取得了成功,但是当它归结为真实的时候,没有成功.

当我尝试从shell执行send_mail时,我得到了这个回溯:

>>> from django.core.mail import send_mail
>>> send_mail('Test', 'Test', 'myemail@gmail.com', ['myemail@gmail.com'])
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/django/core/mail/__init__.py", line 61, in send_mail
    connection=connection).send()
  File "/usr/local/lib/python2.6/dist-packages/django/core/mail/message.py", line 251, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "/usr/local/lib/python2.6/dist-packages/django/core/mail/backends/smtp.py", …
Run Code Online (Sandbox Code Playgroud)

python django smtp

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

Python numpy 2D数组索引

我对python和numpy很新.有人可以帮我理解如何对一些用作索引的数组进行索引.我有以下六个这样的2D阵列 -

array([[2, 0],
   [3, 0],
   [3, 1],
   [5, 0],
   [5, 1],
   [5, 2]])
Run Code Online (Sandbox Code Playgroud)

我想使用这些数组作为索引,并将值10放在新空矩阵的相应索引中.输出应如下所示 -

array([[ 0,  0,  0],
   [ 0,  0,  0],
   [10,  0,  0],
   [10, 10,  0],
   [ 0,  0,  0],
   [10, 10, 10]])
Run Code Online (Sandbox Code Playgroud)

到目前为止,我试过这个 -

    from numpy import*
    a = array([[2,0],[3,0],[3,1],[5,0],[5,1],[5,2]])
    b = zeros((6,3),dtype ='int32')
    b[a] = 10
Run Code Online (Sandbox Code Playgroud)

但这给了我错误的输出.任何帮助请.

python numpy

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

随机数,不等于前一个数字

我需要得到随机数,但它不应该等于之前的数字.这是我的代码片段.但它不起作用.

function getNumber(){
  var min = 0;
  var max = 4;
  var i;
  i = Math.floor(Math.random() * (max - min)) + min;
  if (i=== i) {
    i = Math.floor(Math.random() * (max - min)) + min;
  }
  return i;
};

console.log(getNumber());
Run Code Online (Sandbox Code Playgroud)

javascript

26
推荐指数
6
解决办法
6798
查看次数

哪个是在python中迭代列表的最有效方法?

说我有一个项目列表:

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

我需要为每个项目执行一些功能.在某种情况下,我需要返回一个项目的索引.

哪种方式最好,效率最高?

for item in list:
    ....
Run Code Online (Sandbox Code Playgroud)

要么

for i in range(len(list)):
    ....
Run Code Online (Sandbox Code Playgroud)

python performance list

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