小编bos*_*son的帖子

如何组合range()函数

对于我正在编写的一些代码,我需要从1-30跳过迭代6.我天真地尝试的是

a = range(1,6)
b = range(7,31)

for i in a+b:
    print i
Run Code Online (Sandbox Code Playgroud)

有没有办法更有效地做到这一点?

python python-2.x

7
推荐指数
2
解决办法
7503
查看次数

将列表乘以列表的所有元素,除了它自己的索引

我正在尝试构建一个函数,该函数给出一个列表将返回一个元素相乘的列表,不包括位于同一索引处的元素。例如,对于列表[1,2,3,4],它将返回[2*3*4,1*3*4,1*2*3]。这是我试过的

import numpy as np
def my_function(ints):
products = np.ones(len(ints))
indices = range(0,len(ints))
for i in ints:
    if i != indices[i]
        products *=ints[i]
return products
Run Code Online (Sandbox Code Playgroud)

我认为我的问题是我认为“i”将引用索引而不是这些索引的值。

  1. 如何创建将引用索引而不是值的内容
  2. 有没有更好的方法来解决这个问题?

python numpy list

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

检查列表中是否有相邻的整数相等

如果我有一个清单

a = [9,4,3,6,4,4,3,6,4] 
Run Code Online (Sandbox Code Playgroud)

如何检查两个相邻元素是否相同?例如,对于索引4和5处的元素(两者都具有值4)将是如此.

python list

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

熊猫to_timedelta函数似乎将数据转换为0

这一直对我有用,但是从几天前开始,我得到了奇怪的结果。

my_list = [1,2,3,4,5]
my_series = pd.Series(my_list)
print pd.to_timedelta(my_series)
Run Code Online (Sandbox Code Playgroud)

刚刚返回

0    00:00:00:000000
1    00:00:00:000000
2    00:00:00:000000
3    00:00:00:000000
4    00:00:00:000000
Run Code Online (Sandbox Code Playgroud)

谁能告诉我发生了什么事?

编辑:在我的实际代码中,我使用以下命令将我的(即将成为timedelta)列更改为整数

df['col'].astype(int, inplace = True)
Run Code Online (Sandbox Code Playgroud)

在调用to_timedelta函数之前。我真的应该一直在做

new_col = pd.to_numeric(df['col'])
Run Code Online (Sandbox Code Playgroud)

然后在new_col上调用to_timedelta。也许有人可以阐明为什么会这样。

python timedelta pandas

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

在excel中查找与两个字符串相交的单元格值

我想知道如何根据列中的字符串和行中的字符串来获取Excel的值.例如

         a73hfj     a384asd     a848fjs

a          x1          x2          x3

b          y1          y2          y3

c          z1          z2          z3
Run Code Online (Sandbox Code Playgroud)

如何通过指定它位于b的行和a384asd的列中来找到y2?

谢谢!

excel excel-formula

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

如何简化这个糟糕的代码?

我是编程的新手,并且在简化代码方面遇到了一些问题.我对此之前的部分没有任何问题,只需要知道如何简化这段代码.我希望下面的代码也可以在"11"的位置绘制12,18,20,27和28.我非常感谢你的帮助!

simrecno1inds11 = nonzero(datasim11[:,1]==no1)[0]
simrecno2inds11 = nonzero(datasim11[:,1]==no2)[0]
simrecno3inds11 = nonzero(datasim11[:,1]==no3)[0]
simrecno4inds11 = nonzero(datasim11[:,1]==no4)[0]
simrecno5inds11 = nonzero(datasim11[:,1]==no5)[0]

simrecno7inds11 = nonzero(datasim11[:,1]==no7)[0]
simrecno8inds11 = nonzero(datasim11[:,1]==no8)[0]
simrecno9inds11 = nonzero(datasim11[:,1]==no9)[0]
simrecno10inds11 = nonzero(datasim11[:,1]==no10)[0]
simrecno11inds11 = nonzero(datasim11[:,1]==no11)[0]
simrecno12inds11 = nonzero(datasim11[:,1]==no12)[0]
simrecno13inds11 = nonzero(datasim11[:,1]==no13)[0]
simrecno14inds11 = nonzero(datasim11[:,1]==no14)[0]
simrecno15inds11 = nonzero(datasim11[:,1]==no15)[0]
simrecno16inds11 = nonzero(datasim11[:,1]==no16)[0]
simrecno17inds11 = nonzero(datasim11[:,1]==no17)[0]
simrecno18inds11 = nonzero(datasim11[:,1]==no18)[0]
simrecno19inds11 = nonzero(datasim11[:,1]==no19)[0]
simrecno20inds11 = nonzero(datasim11[:,1]==no20)[0]
simrecno21inds11 = nonzero(datasim11[:,1]==no21)[0]
simrecno22inds11 = nonzero(datasim11[:,1]==no22)[0]
simrecno23inds11 = nonzero(datasim11[:,1]==no23)[0]
simrecno24inds11 = nonzero(datasim11[:,1]==no24)[0]
simrecno25inds11 = nonzero(datasim11[:,1]==no25)[0]
simrecno26inds11 = nonzero(datasim11[:,1]==no26)[0]
simrecno27inds11 = nonzero(datasim11[:,1]==no27)[0]
simrecno28inds11 …
Run Code Online (Sandbox Code Playgroud)

python numpy

0
推荐指数
1
解决办法
163
查看次数

Sys.exit() 抛出语法错误

我正在创建一个检查输入并在输入格式不正确时退出的函数。但是,我收到一个错误,提示 sys.exit() 是“无效语法”。任何帮助将非常感激!

import re 
import sys

def my_program(x):
# takes input in form '#d#'
    if re.match('\d\w\d', x ) is False:
        print('Format of input must be '#d#')
    sys.exit()
Run Code Online (Sandbox Code Playgroud)

python sys

0
推荐指数
1
解决办法
6767
查看次数

标签 统计

python ×6

list ×2

numpy ×2

excel ×1

excel-formula ×1

pandas ×1

python-2.x ×1

sys ×1

timedelta ×1