小编Ste*_*uch的帖子

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

如何在Python中的某些字符后拆分字符串

如果我有一个字符串,让刚刚说了,b a hello b Hi怎么可能我分裂的所有字符串b小号的字母第一次出现a

如上,它将返回["b a hello", "Hi"]

python substring

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

为什么这个简单的python程序不能按照我想要的方式工作?

以下代码段旨在允许用户输入问题的答案.允许他们输入四个答案:y或者Y是"是",n或者N是"否".如果条目有效,程序应打印出收到的答案,否则打印出错误消息.

answer = input("What is your answer? ")
if answer == "y" or "Y":
    print("You answered yes")
elif answer == "n" or "N":
    print("You answered no")
else:
    print("You didn’t enter an acceptable answer")
Run Code Online (Sandbox Code Playgroud)

它只是继续说我yes不管是否放了n或者是N随机的东西都回答了.有人可以向我解释一下吗?

python python-3.x

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

如何覆盖数据帧第一行的值

给定一个panda.Dataframe诸如:

df = pd.DataFrame(np.random.randn(10,5), columns = ['a','b','c','d','e'])
Run Code Online (Sandbox Code Playgroud)

我想知道用 0 (或其他特定值)替换第一行中的所有值并使用新数据框的最佳方法。我想以一般方式执行此操作,其中可能有比本示例中更多或更少的列。

尽管问题很简单,但我无法找到解决方案。fillna()其他人发布的大多数示例都与相关方法有关

python dataframe python-3.x pandas

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

Python覆盖率:不包括文件

我使用unittest2覆盖其中还包含我的项目在虚拟环境中。

当我运行时coverage report -m,报告显示来自lib/python3.5/site-packages/ 的其他几个文件。

因为有几个文件要排除,每次我想运行测试并查看覆盖率报告时,尝试从命令行排除它们是很乏味的。这就是我选择依赖配置文件的原因。

文件说我应该在这样做.coveragerc文件。但是我看不到它。当我运行pip show coverage然后ls -a path_to_coverage_directory我看到config.py文件时。因此,通过查看选项在哪里--omit并将其更改为从测试和报告中排除了一个文件:

self._omit = None 
Run Code Online (Sandbox Code Playgroud)

到:

self._omit = ['/home/begueradj/development/app/lib/python3.5/site-packages/unittest2/case.py']
Run Code Online (Sandbox Code Playgroud)

我保存了配置文件并再次运行测试以及覆盖率报告:我看到这个文件没有被排除。

我错过了什么?你如何解决这个问题?

python unit-testing code-coverage config

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

Python递归打印嵌套哈希

我想在Python中打印嵌套哈希,由此:

example_dict = {
    'key1' : 'value1',
    'key2' : {
        'key2a': 'value2a'
    },
    'key3' : {
        'key3a': {
            'key3aa': 'value3aa',
            'key3ab': 'value3ab',
            'key3ac': 'value3ac'
        },
        'key3b': [
            'value3b1',
            'value3b2'
        ]
    },
}
Run Code Online (Sandbox Code Playgroud)

这样的事情:

key1 value1
key2 key2a value2a
key3 key3a key3aa value3aa
key3 key3a key3ab value3ab
key3 key3a key3ac value3ac
key3 key3b value3b1
key3 key3b value3b2
Run Code Online (Sandbox Code Playgroud)

我对Python并不熟悉,几个小时后我仍然陷入困境.

我目前正在研究这个功能:

def recursive(src, res, line = ''):
    if isinstance(src, dict):
        for key, value in src.items():
            line += str(' ' + key)
            recursive(value, res, …
Run Code Online (Sandbox Code Playgroud)

python recursion hash dictionary

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

复杂的 json 到 Pandas 数据框

有很多关于 json to pandas 数据框的问题,但没有一个能解决我的问题。我正在练习这个看起来像这样的复杂 json 文件

{
  "type" : "FeatureCollection",
  "features" : [ {
    "Id" : 265068000,
    "type" : "Feature",
    "geometry" : {
      "type" : "Point",
      "coordinates" : [ 22.170376666666666, 65.57273333333333 ]
    },
    "properties" : {
      "timestampExternal" : 1529151039629
    }
  }, {
    "Id" : 265745760,
    "type" : "Feature",
    "geometry" : {
      "type" : "Point",
      "coordinates" : [ 20.329506666666667, 63.675425000000004 ]
    },
    "properties" : {
      "timestampExternal" : 1529151278287
    }
  } ]
}
Run Code Online (Sandbox Code Playgroud)

我想使用pd.read_json()我的主要目标将这个 json 直接转换为 Pandas 数据帧,我的主要目标是提取 Id、坐标和时间戳外部。由于这是非常复杂的 …

python json dataframe pandas

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

Python Click:错误:调用 --help 标志时缺少参数

这是我的代码:

@click.group()
@click.pass_context
@click.argument('CHALLENGE', type=int)
def challenge(ctx, challenge):
    ctx.obj = Challenge(challenge=challenge)

@click.group(invoke_without_command=True, cls=PhaseGroup)
@click.pass_obj
@click.argument('PHASE', type=int)
def phase(ctx, phase):
    # Something

challenge.add_command(phase)
Run Code Online (Sandbox Code Playgroud)

这些命令一起工作应该是这样的。

cli challenge 1 phase 1
Run Code Online (Sandbox Code Playgroud)

通过正确执行,它可以按预期工作。

但是当我使用 --help 或在阶段上定义任何其他标志时,它会抛出

cli challenge 1 phase 1 --help

It throws Error: Missing argument "PHASE".
Run Code Online (Sandbox Code Playgroud)

我搜索了 SOF,发现python click app 失败,并显示“缺少参数”,但无法找到问题这是一个有同样问题的用户,但我不太明白答案。

我不能将参数设置为可选,因为它是 CLI 工作的关键部分。

python command-line-interface python-click

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

Python3有助于确定动态创建列表的大多数pythonic方法

寻求专家的帮助,以帮助我在创建的程序中做出正确的选择.创建列表的两种方法中哪一种看起来更像Pythonic并且对您可读?或者,有没有更好的方法可以做到这一点?

方法#1 - 列表理解

def test_func(*args):
    s = 'Country name: United {nm}'
    l = [s.format(nm='States') if x is 'us' 
         else s.format(nm='Arab Emirates') if x is 'uae'
         else s.format(nm='Kingdom') if x is 'uk' 
         else 'Unknown' for x in args]
    return l

# execute
test_func('us', 'uk', 'uae')

# results
['Country name: United States',
 'Country name: United Kingdom',
 'Country name: United Arab Emirates']
Run Code Online (Sandbox Code Playgroud)

方法#2 - for循环

def test_func(*args):
    s = 'Country name: United {nm}'
    l = []
    for arg in args:
        if arg …
Run Code Online (Sandbox Code Playgroud)

python list-comprehension python-3.x

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

<U12是什么类型?

我一直使用pandasnumpy处理一些数据,直到得到两个类似的数组输出:

array(['french', 'mexican', 'cajun_creole', ..., 'southern_us', 'italian',
       'thai'], dtype='<U12')

array(['french', 'mexican', 'cajun_creole', ..., 'jamaican', 'italian',
   'thai'], dtype=object)
Run Code Online (Sandbox Code Playgroud)

我看不出有什么区别<U12

python arrays types numpy pandas

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