小编Ond*_* K.的帖子

在python中IS运算符的罕见行为

从Stackoverflow上的一些答案中,我开始知道从-5到256相同的内存位置被引用,因此我们得到:

>>> a = 256
>>> a is 256
True
Run Code Online (Sandbox Code Playgroud)

现在来了扭曲(在标记重复之前参见此行):

>>> a = 257
>>> a is 257 
False 
Run Code Online (Sandbox Code Playgroud)

这是完全理解的,但现在如果我这样做:

>>> a = 257; a is 257
True
>>> a = 12345; a is 12345
True
Run Code Online (Sandbox Code Playgroud)

为什么?

python

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

React - 如何将 CSS 样式应用于 iframe 内容

在 React 应用程序中,如何将 CSS 样式应用于 iframe 加载的 src 内容?

我有一个加载外部内容的应用程序,但样式确实过时了,我想覆盖它。

示例波纹管:(请注意,我用一些虚拟数据替换了 , 的src内容<iframe/>,但是,问题仍然相同。

import React from "react";
import ReactDOM from "react-dom";

import "./styles.css";

class Frame extends React.Component {
  componentDidMount() {
    document
      .querySelector("iframe")
      .contentWindow.document.querySelector("h1#firstHeading").style.color =
      "red";
  }
  render() {
    return (
      <iframe
        title="How Can I overwrite the styles from the src content?"
        src="https://en.wikipedia.org/wiki/Herbie_Hancock"
        width="90%"
        height="500px"
        scrolling="no"
      />
    );
  }
}


function App() {
  return (
    <div className="App">
      <Frame />
    </div>
  );
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App …
Run Code Online (Sandbox Code Playgroud)

html javascript css iframe reactjs

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

python:使用列表切片作为for循环的目标

我发现这段代码片段非常有趣.

a = [0, 1, 2, 3]

for a[-1] in a:
    print(a)
Run Code Online (Sandbox Code Playgroud)

输出如下:

[0, 1, 2, 0]
[0, 1, 2, 1]
[0, 1, 2, 2]
[0, 1, 2, 2]
Run Code Online (Sandbox Code Playgroud)

我试图理解为什么python会这样做.是因为python试图重用索引吗?for循环以某种方式切片列表?

我们可以在迭代列表时添加或删除元素,但是当我们尝试使用索引访问变量时,它会产生奇怪的输出.

有人可以帮我理解列表中for循环和索引之间的交互吗?或者只是解释这个输出?

python indexing for-loop list python-3.x

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

Python 3:通过套接字发送文件。(客户端-服务器程序)

我有上述问题。假设客户端要求提供文件名并将文件名发送到服务器,然后服务器将打开文件并显示它。问题是服务器没有打开文件并显示它。

下面是客户端。

#!/usr/bin/env python3 
import socket, os.path, datetime, sys

def Main():
    host = '127.0.0.1'
    port = 50001

    s = socket.socket()
    s.connect((host, port))

    Filename = input("Type in ur file ")
    s.send(Filename.encode('utf-8'))
    data = s.recv(1024).decode('utf-8')
    s.close()

if __name__ == '__main__':
    Main()
Run Code Online (Sandbox Code Playgroud)

下面是服务器

#!/usr/bin/env python3

import socket
import os
import sys



def Main():
    host = '127.0.0.1'
    port = 50001

    s = socket.socket()
    s.bind((host,port))
    print("server Started")
    s.listen(1)
    c, addr = s.accept()
    print("Connection from: " + str(addr))
    while True:
        data = c.recv(1024).decode('utf-8')
        myfile = open(data, …
Run Code Online (Sandbox Code Playgroud)

python sockets python-3.x

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

当我点击 github 中的合并请求按钮时,预合并提交钩子是否会被执行?

当我创建从发布分支到主控的拉取请求时,我想自动更新包版本,之后我希望每当我合并它时,都会执行预合并 git 挂钩来启动另一个脚本。

预合并提交:

cd my_app
    node ./hooks/post-commit-version
    RETVAL=$?

    if [ $RETVAL -ne 0 ]
    then
       exit 1
    fi
Run Code Online (Sandbox Code Playgroud)

钩子/提交后版本:

#!/usr/bin/env node
const exec = require('child_process').exec;
const path = require('path');
const moment = require('moment');
const fs = require('fs');

function getBranch(){
    return new Promise((resolve, reject) =>{
        exec(
            "git branch | grep '*'",
            function (err, stdout, stderr) {
                if(err)reject(err)
                const name = stdout.replace('* ','').replace('\n','');
                resolve(name)
            }
        )
    });
}

getBranch()
    .then((branch) => {
        if(branch === 'release') {
          const currentDate = moment().format('YY.MM.DD')
        var …
Run Code Online (Sandbox Code Playgroud)

git githooks node.js

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

awk长度为+1

作为练习,我正在尝试输出字典中每个可能长度存在多少个单词.这是我的代码:

$ awk '{print length}' dico.txt | sort -nr | uniq -c
Run Code Online (Sandbox Code Playgroud)

这是输出:

...
1799 5
427 4
81 3
1 2
Run Code Online (Sandbox Code Playgroud)

我的问题是awk长度为我文件中的每个单词再多一个字母.正确的输出应该是:

1799 4
427 3
81 2
1 1
Run Code Online (Sandbox Code Playgroud)

我检查了我的文件,它后面没有任何空格:

ABAISSA
ABAISSABLE
ABAISSABLES
ABAISSAI
...
Run Code Online (Sandbox Code Playgroud)

所以我觉得awk将换行计算为一个角色,尽管事实并非如此.有什么解决方案吗?或者我做错了什么?

bash awk

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

在 csv 文件中查找列的索引号,但命令不显示结果?

我想根据列名称获取 CSV 列的索引号。例如,我有这些列:TotalReported;Deceased;City 我尝试这样做:

head -n1 data.csv | tr ";" "\n" | grep -nx "Deceased" | cut -d";" -f1
Run Code Online (Sandbox Code Playgroud)

但没有打印任何内容。我也尝试这样做:

awk -F, '{ for(i=1; i<=NF; i++) if($i=="Deceased") {print i} exit}' data.csv'
Run Code Online (Sandbox Code Playgroud)

它不打印任何内容。我能做些什么?

这是文件的内容data.csv

Date_of_report;Municipality_code;Municipality_name;Province;Total_reported;Hospital_admission;Deceased
2020-03-13 10:00:00;GM0003;Appingedam;Groningen;0;0;0
2020-03-13 10:00:00;GM0010;Delfzijl;Groningen;0;0;0
2020-03-13 10:00:00;GM0014;Groningen;Groningen;3;0;0
2020-03-13 10:00:00;GM0024;Loppersum;Groningen;0;0;0
2020-03-13 10:00:00;GM0034;Almere;Flevoland;1;1;0
2020-03-13 10:00:00;GM0037;Stadskanaal;Groningen;0;0;0
2020-03-13 10:00:00;GM0047;Veendam;Groningen;0;0;0
2020-03-13 10:00:00;GM0050;Zeewolde;Flevoland;1;0;0
2020-03-13 10:00:00;GM0059;Achtkarspelen;Friesland;0;0;0
2020-03-13 10:00:00;GM0060;Ameland;Friesland;0;0;0
2020-03-13 10:00:00;GM0072;Harlingen;Friesland;0;0;0
2020-03-13 10:00:00;GM0074;Heerenveen;Friesland;0;0;0
Run Code Online (Sandbox Code Playgroud)

基本上我想获取一列的索引号,然后将索引号放入此awk命令中

v1=$(awk -F";" '{x+=$index}END{print x}' ./data.csv)
Run Code Online (Sandbox Code Playgroud)

并获取该特定列的所有数字的总和。最后三列很重要,因为您当然只能对它们求和。

csv indexing bash shell awk

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

标签 统计

python ×3

awk ×2

bash ×2

indexing ×2

python-3.x ×2

css ×1

csv ×1

for-loop ×1

git ×1

githooks ×1

html ×1

iframe ×1

javascript ×1

list ×1

node.js ×1

reactjs ×1

shell ×1

sockets ×1