小编eum*_*iro的帖子

如何在Python中将整个序列推送到redis

我可以使用Redis.rpush('key', 1, 2, 3)三个元素推送到redis,但是如果有一个序列:

seq = [1, 2, 3]

Redis.rpush('key', seq)
Run Code Online (Sandbox Code Playgroud)

它会将'seq'元素推送到redis而不是三个数字.有什么方法可以把整个序列推到redis?

python redis python-2.7

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

如何在unix中使用C shell一次读取一行

我尝试使用c shell创建一个小脚本,它将获取由多行组成的文件,每行包含一个名称和一个数字,并将所有具有特定名称的数字相加.我怎样才能每次都将下一行放入变量?

我所做的summig部分:(在我能够获得$ line的完整行之后)

set line =($line)
@ sum = $sum + $line[2]
Run Code Online (Sandbox Code Playgroud)

unix csh

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

在python参考思维拼图中的lambda

考虑这个例子

def dump(value):
    print value

items = []    
for i in range(0, 2):
    items.append(lambda: dump(i))

for item in items:
    item()
Run Code Online (Sandbox Code Playgroud)

输出:

1
1
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到:

0
1
Run Code Online (Sandbox Code Playgroud)

python lambda reference

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

基本的Python文件搜索和I/O.

我正在尝试用Python完成一个简单的任务,我是该语言的新手(我是C++).我希望有人能指出我正确的方向.

问题:我有一个充满数据的XML文件(12mb),在文件中有开始标记'xmltag'和结束标记'/ xmltag',它们代表我想要提取的数据部分的开始和结束.

我想通过循环浏览这个打开的文件,并为每个实例找到一个开始标记,并将该部分中的数据复制到一个新文件,直到结束标记.我想重复一遍到文件的末尾.

我对文件I/O感到满意,但不是最有效的循环,搜索和提取数据.

我非常喜欢这种语言的外观,希望我能更多地参与其中,这样我就可以回馈社区了.

十分感谢!

python xml search text file

5
推荐指数
0
解决办法
349
查看次数

Ackermann函数与n个嵌套循环

我正在研究一本关于计算的书(Minksy 1967),并且很难将递归函数与循环定义的函数联系起来.具体来说,他要求找到两个函数之间的关系:

Ackermann函数(python中的所有代码):

def a(n,m):
    if n==0:
        return m+1
    if m==0:
        return a(n-1,1)
    return a(n-1,a(n,m-1))
Run Code Online (Sandbox Code Playgroud)

和一个用n个嵌套循环计算的函数:

def p(n,m):
    for i_1 in range(m):
        for i_2 in range(m):
           ...
             for i_n in range(m):
                  m+=1
Run Code Online (Sandbox Code Playgroud)

写这个(用一个循环)的递归方式是:

def p(n,m):
     if n==0:
         return m+1
     for i in range(m):
         m=p(n-1,m)
     return m
Run Code Online (Sandbox Code Playgroud)

或者完全递归的方式来编写它将是:

def p(n,m):
    return P(n,m,m)
def P(n,k,m):
    if n==0:
        return m+1
    if k==1:
        return P(n-1,m,m)
    m=P(n,k-1,m)
    return P(n-1,m,m) 
Run Code Online (Sandbox Code Playgroud)

这两个函数有关联的简单方法吗?我觉得我在迷雾中爬行 - 任何有关如何处理这些问题的见解都会非常感激.另外,有没有办法在不引入第三个参数的情况下实现完全递归循环函数?谢谢.

python computer-science computability

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

Python将Unicode-Hex utf-8字符串转换为Unicode字符串

有,s = u'Gaga\xe2\x80\x99s'但需要转换为t = u'Gaga\u2019s'

如何才能最好地实现这一目标?

python unicode utf-8

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

在dict中聚合项目

我有一个这样的列表:

A = [{u'CI': {u'RP': 1}}, {u'CI': {u'RP': 1}},  {u'JI': {u'RP': 1}}]
Run Code Online (Sandbox Code Playgroud)

我想在dict中合并相同的键和增量值.

例:

从这些值:

{u'CI': {u'RP': 1}}, {u'CI': {u'RP': 1}}
Run Code Online (Sandbox Code Playgroud)

我会有:

{u'CI': {u'RP': 2}}
Run Code Online (Sandbox Code Playgroud)

最终列表结果是:

A = [{u'CI': {u'RP': 2}}, {u'JI': {u'RP': 1}]
Run Code Online (Sandbox Code Playgroud)

python

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

在python中使用格式化打印的双引号和单引号

所以我正在经历"以艰难的方式学习Python"

而这样做:

formatter = "%r %r %r %r"

print formatter % (
    "I had this thing.",
    "That you could up right.",
    "But it didn't sing.",
    "So I said goodnight"
)
Run Code Online (Sandbox Code Playgroud)

输出是

'I had this thing.' 'That you could up right.' "But it didn't sing." 'So I said goodnight'
Run Code Online (Sandbox Code Playgroud)

但我不确定为什么第3个字符串有双字符串.

python string output

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

可以pandas.DatetimeIndex记住是否关闭?

我有一个pandas.DatetimeIndex间隔['2018-01-01', '2018-01-04')(开始包括,结束排除)和freq=1D:

>>> index = pd.DatetimeIndex(start='2018-01-01',
                             end='2018-01-04',
                             freq='1D',
                             closed='left')
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03'],
              dtype='datetime64[ns]',
              freq='D')
Run Code Online (Sandbox Code Playgroud)

如何end='2018-01-04'再次获取正确的打开属性?我需要它用于具有时间戳范围的数据库查询.

  1. 没有 index.end
  2. index[-1] 回报 '2018-01-03'
  3. index[-1] + index.freq 在这种情况下工作但是错了 freq='2D'

python datetime pandas

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

如何使用正则表达式在数字和字符之间进行拆分?

我有一个包含工作日和开放时间的字符串,如何使用正则表达式将这些字符串分割成行?字符串的示例是:

Mån - Tor6:30 - 22:00Fre6:30 - 20:00Lör9:00 - 18:00Sön10:00 - 19:00
Run Code Online (Sandbox Code Playgroud)

我想分开一个较低的字母和一个数字,以及一个数字和一个大写字母

Mån - Tor  
6:30 - 22:00  
Fre  
6:30 - 20:00  
Lör  
9:00 - 18:00  
Sön  
10:00 - 19:00 
Run Code Online (Sandbox Code Playgroud)

提前致谢!

regex

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