小编vvv*_*vvv的帖子

Python正则表达式匹配字符串末尾的标点符号

如果句子以大写字母开头并以Python中的[?.!]结尾,我需要匹配.

编辑它必须在结尾处有[?.!] 但在句子中允许其他标点符号

import re
s = ['This sentence is correct.','This sentence is not correct', 'Something is !wrong! here.','"This is an example of *correct* sentence."']

# What I tried so for is:
for i in s:
    print(re.match('^[A-Z][?.!]$', i) is not None)
Run Code Online (Sandbox Code Playgroud)

它不起作用,经过一些更改我知道该^[A-Z]部分是正确的但最后匹配标点符号是不正确的.

python regex match python-3.x

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

python docker 如何将目录从主机挂载到容器

有人可以分享一些显示如何挂载目录的 py api 示例吗?我试过这样,但我没有看到它的工作

dockerClient = docker.from_env()
dockerClient.containers.run('image', 'ls -ltr', volumes={os.getcwd(): {'bind': '/tmp/', 'mode': 'rw'}})
Run Code Online (Sandbox Code Playgroud)

python python-2.7 docker dockerpy

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

KeyboardEvent 的 Angular 4 单元测试

我正在尝试为我编写的实用程序编写单元测试,以限制输入字段可用的字符。该方法接受键盘事件并确定哪个 event.code 已被触发,并返回 true 或 event.preventDefault()。这很好用,但我无法在茉莉花/业力中测试它。

来自模板的当前输入

<input [(ngModel)]="donationValue" formControlName="donationAmount" 
type="tel" class="donation-amount" (keydown)="checkCharacter($event)" 
placeholder="Enter Amount..."/>
Run Code Online (Sandbox Code Playgroud)

这是我目前的测试

it('should return have defaultPrevented as true', fakeAsync(() => {
        const goalInput = 
fixture.debugElement.query(By.css('input.donation-
amount')).nativeElement;
        const keyEventData = { isTrusted: true, code: 'KeyA' };
        const keyEvent = new KeyboardEvent('keydown', keyEventData);
        goalInput.dispatchEvent(keyEvent);
        tick();
        fixture.detectChanges();                
        expect(keyEvent.defaultPrevented).toBe(true);
    }));
Run Code Online (Sandbox Code Playgroud)

我对这些方法进行了其他测试,但它们被解雇了。我怀疑 isTrusted 属性设置为 false,即使我试图将其设置为 true。

javascript unit-testing karma-jasmine angular

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

redux-persist:如何在浏览器的本地存储上保存状态?

我正在学习 redux 并想知道如何在本地保存状态,以便在对状态进行一些更改后刷新时保持状态。我开始了解 redux-persist 并看到了描述如何使用它的 github 文档,但对我来说不是很清楚。

这是我的应用程序的 index.js 代码 -

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import { createStore, applyMiddleware } from 'redux';

import App from './components/app';
import reducers from './reducers';

const createStoreWithMiddleware = applyMiddleware()(createStore);

ReactDOM.render(
  <Provider store={createStoreWithMiddleware(reducers)}>
    <App />
  </Provider>
  , document.querySelector('#container'));
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现它?

javascript reactjs react-redux redux-persist

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

使用python Web压缩Crunchbase数据

码:

import requests

response= requests.get("https://www.crunchbase.com/search/people/field/organizations/num_employees_enum/anheuser-busch")

response.raise_for_status()

webFile =open('myFile.txt', 'wb')

for chunk in res.iter_content(10000):
    webFile.write(chunk)
    webFile.close()
Run Code Online (Sandbox Code Playgroud)

我发现以下错误:

requests.exceptions.HTTPError:416客户端错误:URL的请求范围不满足:https : //www.crunchbase.com/search/people/field/organizations/num_employees_enum/anheuser-busch

python web-scraping python-3.x

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

如何通过javascrypt(不是Nodejs)解密AES 256 CBC?

如何使用AES 256 CBCdIwykUwOomuWcdw/QX/Aig==模式中的密钥和 iv解密加密字符串,如下图所示,仅使用 javascript(不是 Nodejs)。我曾经尝试使用 CryptoJs 库,但结果并不像我预期的那样。ds8am3wys3pd75nf0ggtvajw2k3uny92jm8lgqa3j1d0ajus

在此输入图像描述

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/aes.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/pbkdf2.js"></script>
<script>
    var str = 'dIwykUwOomuWcdw/QX/Aig==';
    var key = 'ds8am3wys3pd75nf0ggtvajw2k3uny92';
    var iv  = 'jm8lgqa3j1d0ajus';

    var encrypted = CryptoJS.AES.encrypt("2730007809303", key, { iv: iv });
    var decrypted = CryptoJS.AES.decrypt(encrypted, key, { iv: iv});
    var base64_str = decrypted.toString(CryptoJS.enc.Base64);
    console.log(atob(base64_str))
</script>
Run Code Online (Sandbox Code Playgroud)

顺便问一下,如何将输入字符串转换dIwykUwOomuWcdw/QX/Aig==encrypted上面的对象?

javascript encryption aes

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

获取 xarray 数据集中的键列表

我正在向 xarray 数据集添加变量,当我完成后,我想提取一个键列表,但我找不到这样做的方法。

d = xr.Dataset()
d['key1'] = [1, 2]
d['key2'] = [3, 4]
Run Code Online (Sandbox Code Playgroud)

我想要的结果是

keylist = ['key1', 'key2']
Run Code Online (Sandbox Code Playgroud)

python python-3.x xarray

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

如何将HttpClient订阅数据返回到组件

我正在尝试使用subscribe方法从服务返回数据.

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';

@Injectable()
export class DevRequestService {
    constructor(private http: HttpClient){}
    getListOfAgencies() {
        return this.http.get('https://example.com/api/agency').subscribe(data => {
            return data;
          });
    }
}
Run Code Online (Sandbox Code Playgroud)

零件:

ngOnInit(): void {
  console.log(this.devRequestService.getListOfAgencies());
}
Run Code Online (Sandbox Code Playgroud)

下面是我在console.log中获得的输出,而不是返回带有值的对象:

Subscriber {closed: false, _parent: null, _parents: null, _subscriptions: Array(1), syncErrorValue: null, …}

typescript angular

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

如何在react-router v4中的后退按钮上显示模态框?

如果用户单击浏览器中的后退按钮,如何显示自定义模式框。我已经有一个用于字段更改的模式框,但我不想使用 Prompt 的window.confirm.

javascript reactjs react-router

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

Angular 5:警告承诺被拒绝

我刚刚使用angular-cli安装了Angular 5:

在新的应用程序中,以下警告将在控制台中进行吐出.

不知道原因是什么?

h1.js:25 Warning: a promise was rejected with a non-error: [object String]
     at g (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:11246)
     at i.n._warn (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:15804)
     at i._rejectCallback (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:45600)
     at Function.i.reject.i.rejected (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:41344)
     at chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:39:63684
     at i (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:72787)
     at i._settlePromiseFromHandler (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:46193)
     at i._settlePromise (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:46993)
     at i._settlePromise0 (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:47692)
     at i._settlePromises (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:49019)
     at o._drainQueue (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:2790)
     at o._drainQueues (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:2851)
     at drainQueues (chrome-extension://bmnlcjabgnpnenekpadlanbbkooimhnj/h1.js:25:984)
     at <anonymous>
Run Code Online (Sandbox Code Playgroud)

promise angular angular5

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

禁用引导模式区域外的单击事件以关闭 angular 4 模式

我是anguar4的新手。我在我的项目中使用引导模式。当在模态之外单击时,模态将隐藏。这是我的代码

//在html中

<div bsModal #noticeModal="bs-modal" class="modal fade" tabindex="-1" role="dialog" 
    aria-labelledby="myLargeModalLabel"
    aria-hidden="true">

    <div class="modal-dialog modal-md">
        <div class="modal-content">
              Hello World
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

// 在 ts 代码中

@ViewChild('noticeModal') public noticeModal: ModalDirective;

ngAfterViewInit() {
   this.noticeModal.show();
};
Run Code Online (Sandbox Code Playgroud)

typescript bootstrap-modal angular

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

Vue children路由器:url已更改但显示父组件

我正在学习Vue并坚持使用嵌套路由器,我在路由中定义了一些子路由器,但是当我访问子路由时它仍然显示父组件,我的代码如下:

App.vue:

<template>
  <div id="app">
    <img src="./assets/logo.png">
    <router-link :to="{name: 'Home'}">Home</router-link>
    <router-link to="/cart">Cart</router-link>
    <router-link to="/admin">Admin</router-link>
    <router-link to="/admin/add">?Admin Add?</router-link>
    <router-link to="/admin/edit">Admin Edit</router-link>

    <router-view/>
  </div>
</template>

<script>
export default {
  name: 'app'
}
</script>

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>
Run Code Online (Sandbox Code Playgroud)

路由器/ index.js:

import Vue from 'vue'
import Router from 'vue-router'
import Home from '@/components/pages/Home'
import Cart from '@/components/pages/Cart'
import Index from '@/components/pages/Admin/Index'
import Add from '@/components/pages/Admin/Add'
import Edit from …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vue-router

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

在 Yii2 中 Try/catch 不会捕获异常

正如标题所说,try/catch不会捕获抛出的异常。

这是我的代码:

public function edit($id)
{
    try {
        $this->permissions($id);   
        return $this->redirect(['edit/list']);

    } catch (Exception $e) {
        Yii::$app->session->setFlash('error', Yii::t('app', 'PERMISSIONS_NOT_FOUND'));
    }   
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试捕获方法中的异常permissions()。权限方法是:

private function persimssions($id)
{
    $permitted = false;

    if (!$permitted) {
        throw new ForbiddenHttpException(Yii::t('app', 'MODULE_NO_PERMISSIONS'));
    }
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释我有什么问题吗?谢谢你的帮助

php yii2

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