小编Mar*_*ers的帖子

正则表达式搜索预期的字符串或类似字节的对象

import os\nimport codecs\nimport argparse\nos.chdir(\'C:\\\\Users\\\\Kingsaber\\\\Desktop\\\\python_excercises\')\na = codecs.open(\'BeforeKichiku.txt\', encoding=\'utf-8\')\np = a.read()\nprint(p)\n\nimport re\n\n#ch = u"I am from \xe7\xbe\x8e\xe5\x9b\xbd\xe3\x80\x82We should be friends. \xe6\x9c\x8b\xe5\x8f\x8b."\n\nb = re.findall(u"[\\u4e00-\\u9fff]+", a)\nfor x in b:\n    print(x)\n
Run Code Online (Sandbox Code Playgroud)\n\n

预期结果:打印出变量“a”中的所有内容,并找到 u4e00-\\u9fff 之间的所有 unicode 字符并在下面打印出来。

\n\n

发生了什么:文档成功打印出来,但正则表达式搜索出现以下错误。如果我切换正则表达式来搜索字符串“ch”,一切都会按预期工作。由于某种原因,它不适用于 Unicode 文档。

\n\n

错误:

\n\n
Traceback (most recent call last):\n  File "C:/Users/Kingsaber/Desktop/destruga3.py", line 15, in <module>\n    b = re.findall(u"[\\u4e00-\\u9fff]+", a)\n  File "C:\\Users\\Kingsaber\\AppData\\Local\\Programs\\Python\\Python35-32\\lib\\re.py", line 213, in findall\n    return _compile(pattern, flags).findall(string)\nTypeError: expected string or bytes-like object\n
Run Code Online (Sandbox Code Playgroud)\n

python regex python-3.5

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

TypeError:join()参数必须是str或bytes,而不是'NoneType'

我继续得到下面的错误,有人可以告诉我我做错了什么?

Traceback (most recent call last):
  File "generate_simulated_pair.py", line 50, in <module>
    outfile = open(os.path.join(settings.CSV_DATA_DIR ,"%s_%s.csv"%(pair, d.strftime ("%Y%m%d")
  File "C:\Program Files\Python35\lib\ntpath.py", line 113, in join
    genericpath._check_arg_types('join', path, *paths)
  File "C:\Program Files\Python35\lib\genericpath.py", line 143, in _check_arg_types
    (funcname, s.__class__.__name__)) from None
TypeError: join() argument must be str or bytes, not 'NoneType'
Run Code Online (Sandbox Code Playgroud)

请参阅下面的内容,这是用于从oanda创建CSV文件以进行回溯测试

from __future__ import print_function

import calendar
import copy
import datetime
import os, os.path
import sys

import numpy as np
import pandas as pd
import pandas_datareader

from pandas_datareader import data, wb …
Run Code Online (Sandbox Code Playgroud)

python

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

为什么我们必须直接将模块名称赋给`import`语句?

我正在阅读/sf/answers/1976226381/

为什么我们可以将模块名称作为变量来builtins.__import__运行,而我们必须直接将模块名称赋予import语句?

语句和导致这种差异的函数之间有什么区别?

python python-3.x

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

生成列表而不接受某些值

我想创建一个随机的元组列表,其中每个元组的长度相同(例如6个),并由随机选择 values = [0, 15, 30, 45, 60].

一个示例解决方案是[(0, 30, 60, 0 , 15, 0)...(15, 45, 45, 0, 30, 60)].但是,我不想接受(0, 0, 0, 0, 0, 0)这个解决方案.

python random python-2.7

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

Python将时间字符串"4d12h33m59s"分割成碎片

我想知道是否有人可以帮助提出一个优雅的解决方案,如何将从路由器的格式API收到的时间字符串拆分"4d12h33m59s"成碎片.

问题是字符串可能是动态大小.例如,它可以是"4d12h33m59s""12h33m59s""12y14w4d12h33m59s""12m23s","33s".

是否有任何优雅的方法来分割字符串并得到如下列表:

received_string = "12y14w4d12h33m59s"
time_list = convert_string(received_string)

print(time_list) 
["12y","14w","4d","12h","33m","59s"]
Run Code Online (Sandbox Code Playgroud)

python string time split

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

Python str.split()和列表创建

目前通过"Python编程:CS简介"学习python,在将字符串拆分为列表之前,所有内容都已清晰可见.总的来说,我得到了要点,str.split()但只是发现了一些有点古怪的东西.

这本书有以下例子:

>>> myString = "Hello, string methods!"
>>> myString.split()
['Hello,' , 'string' , 'methods!']
Run Code Online (Sandbox Code Playgroud)

作者说,myString现在已经分成三个子串列表.

继续,这样做变成myString一个列表:

>>> myString = "Hello, string methods!"
>>> myString2 = myString.split()
>>> myString2
['Hello,' , 'string' , 'methods!']
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

在使用shell进行自己的实验后,我发现了以下内容:

# Testing splitting of variable x
>>> x = "Pleased to meet you"
>>> x
'Pleased to meet you'
>>> x.split()
['Pleased', 'to', 'meet', 'you']
>>> type(x)
**<class 'str'>**

# Testing behavior of splitting …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

条件加入列表

我有一个Python列表:

data = ['Cost', '$', 4244, '$', 4090, '$', 3967]
Run Code Online (Sandbox Code Playgroud)

我想要做的是合并$前面的元素并获得一个新的列表:

data = ['Cost', '$4244', '$4090', '$3967']
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最佳方法是什么?

python list string-concatenation

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

如何使用python查找文本中的JSON对象

我正在尝试使用python regex从文本解析JSON对象。我找到了这个匹配项:

'\{(?:[^{}]|(?R))*\}'
Run Code Online (Sandbox Code Playgroud)

但是在python中,我得到了这个错误:

re.error: unknown extension ?R at position 12
Run Code Online (Sandbox Code Playgroud)

请参见此regex101示例中的regex匹配

python regex json

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

Python中的列表列表的列表理解

我有一个列表列表,我想找到出现“ //”的索引。我知道如何使用嵌套循环,但是我想使用列表理解。我的清单是:

ex = [['foo', 'faa'], ['//', 'sd'], ['foo', 'kaa'], ['side', 'haha', 'blue'], ['//', 'sd']]
Run Code Online (Sandbox Code Playgroud)

如何在此处使用列表理解来查找出现“ //”的索引?到目前为止,我所做的是:

indices = [idx for idx, lst in enumerate(ex)]
Run Code Online (Sandbox Code Playgroud)

这给了我列表中列表的索引。但是我不知道如何使用这些来查找'//'使用列表理解的索引。

对于上面的ex示例,预期输出为

[1, 4]
Run Code Online (Sandbox Code Playgroud)

例如,对于含有嵌套列表的索引'//',这是ex[1]ex[4]

python list-comprehension list python-3.x

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

如何在python3中节省内存?

我对python3.6中的内存错误有一些疑问

import itertools
input_list = ['a','b','c','d']
group_to_find = list(itertools.product(input_list,input_list))
a = []
for i in range(len(group_to_find)):
    if group_to_find[i] not in a:
       a.append(group_to_find[i])
Run Code Online (Sandbox Code Playgroud)
    group_to_find = list(itertools.product(input_list,input_list))
MemoryError
Run Code Online (Sandbox Code Playgroud)

python python-itertools python-3.x

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