小编mkr*_*er1的帖子

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

“in”运算符的优先级是什么?

今天我在这个Python程序中遇到了一个困难的情况:

a = [False, True]
x = True in a in a
y = True in a in [a]
z = True in a in (a)
print(x, y, z)
Run Code Online (Sandbox Code Playgroud)

这段代码的输出是

a = [False, True]
x = True in a in a
y = True in a in [a]
z = True in a in (a)
print(x, y, z)
Run Code Online (Sandbox Code Playgroud)

这怎么可能?

让我们在x这里测试:

x = True in a in a
Run Code Online (Sandbox Code Playgroud)

True in [False, True]True,又True in [False, True] …

python boolean-logic operators python-3.x

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

我认为我误解了 Go 多态性/接口/结构

我不明白为什么下面的代码不能编译。

我很困惑为什么 Go 说HistoryReader没有正确实现IReaderHistoryBook实现IBook. 当尝试将 a 添加到 s 的切片时,为什么Read(book Ibook)和不能同时接受?Read(book HistoryBook)HistoryReaderIReader

package main

type IReader interface {
   Read(book IBook)
}

// HistoryReader implements IReader
type HistoryReader struct{}

func (r *HistoryReader) Read(book HistoryBook) {
   // ...
}

type IBook interface{}

// HistoryBook implements IBook
type HistoryBook struct{}

func main() {
   var readerSlice []IReader

   _ = append(readerSlice, &HistoryReader{})
}
Run Code Online (Sandbox Code Playgroud)
package main

type IReader interface {
   Read(book IBook)
}

// …
Run Code Online (Sandbox Code Playgroud)

polymorphism struct interface go

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

如何完全拆分字符串,但保留字母重复两次的实例?

我有一个像这样的字符串:

s = 'aaabcdedddd'
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我想将字符串分割成这样的东西。

s = ['aa', 'a', 'b', 'c', 'd', 'e', 'dd', 'dd']
Run Code Online (Sandbox Code Playgroud)

请注意, 的三个字母重复'aaa'不是放在一起的,而是被视为双重复 + 单个字母 ( 'aa'+ 'a''dddd'末尾的 被视为双重复 + 双重复 ( 'dd'+ 'dd')。

有什么办法可以有效地做到这一点吗?

python split

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

使用're.findall'从字符串中提取浮点数

我想从字符串中提取一个浮点数:

"{start Time : 123.24,"
Run Code Online (Sandbox Code Playgroud)

我试过这样使用re.findall

number = re.findall("\d.\d", lines[i]) 
Run Code Online (Sandbox Code Playgroud)

哪里lines[i]是字符串上方。

只返回 3.2(第一个小数位)。

无论小数位数如何,如何提取浮点数?

python regex

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

Python 性能:While 与 For 循环

有人告诉我,while循环通常比for循环快。

这是真的吗?如果是,那是为什么?

python

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

为什么我不能用内置总和对列表求和?

如果你有

x = ['A', 'B', 'C']
y = ['D', 'E', 'F']
Run Code Online (Sandbox Code Playgroud)

然后你可以计算:

x+y # ['A', 'B', 'C', 'D', 'E', 'F']
Run Code Online (Sandbox Code Playgroud)

但是如果你这样做

sum([x,y])
Run Code Online (Sandbox Code Playgroud)

你得到

类型错误:不支持 + 的操作数类型:'int' 和 'list'

知道为什么吗?

python python-3.x

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

如何以毫秒为单位使用 time.sleep() 和变量?

我正在尝试使用 使脚本休眠 462 毫秒time.sleep(),但是没有任何反应。这是我的代码:

delay = int(462)
time.sleep(0. + delay)
Run Code Online (Sandbox Code Playgroud)

我之所以不这样做,time.sleep(0.462)是因为我想稍后添加用户输入。

python python-3.x

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

C++ 在使用 cout 和 printf 时不四舍五入

我需要制作一个计算 cos(x) 的程序,我的问题是,当我使用printf例如 cos(0.2) 是 0.98 但结果是 0.984 并且它没有四舍五入到 2 个数字。

我的代码:

#include <iostream> 
#include <math.h>

using namespace std;

int main()
{
    float x = 0.2;
    cout << "x=" << x << " cos(y) y=" << printf("%.2f", cos(x)) << "\n";
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ io

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

打印不带单引号和括号的字符串

安装countryinfo并导入CountryInfo后,我尝试打印

currency = country.currencies()
print(currency)
Run Code Online (Sandbox Code Playgroud)

结果是['CAD']. CAD我对不带引号和括号感兴趣。

python

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