小编khe*_*ood的帖子

为什么map不执行python 3中的函数

我写了一个下面的小Python程序

def abc(x):
    print(x)
Run Code Online (Sandbox Code Playgroud)

然后调用map(abc,[1,2,3])

但上面的地图功能刚刚显示

<map object at 0x0000000001F0BC88>
Run Code Online (Sandbox Code Playgroud)

而不是打印 x 值。

我知道 map 是 python 3 中的迭代器,但它仍然应该正确打印“x”值。这是否意味着当我们使用“map”时不会调用 abc(x) 方法?

python python-3.x

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

如何在python中列出目录中的文件?

我无法使用此代码列出目录中的文件

import os
from os import listdir
def fn():       # 1.Get file names from directory
    file_list=os.listdir(r"C:\Users\Jerry\Downloads\prank\prank")
    print (file_list)

 #2.To rename files
     fn()
Run Code Online (Sandbox Code Playgroud)

在运行代码时它没有输出!

python directory python-2.7

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

可选地将类型转换映射到子类对象

我正在尝试编写以下代码,其中C是子类B.并且getValue方法仅在C,而不是在B.但Eclipse在此声明中显示错误:

Optional.ofNullable(A).map(A::getB).map(C::getValue);
Run Code Online (Sandbox Code Playgroud)

如果是正常情况,我们将输入类似的转换和写入((C)a.getB()).getValue().我怎么写一个相同的Optional

java optional java-8

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

删除空白区域

我正在使用.replace方法删除字符串中的字符.我遇到的问题是我正在使用参数

.replace("#", "")
Run Code Online (Sandbox Code Playgroud)

从字符串中删除主题标签,例如"#hello".替换方法正在执行删除主题标签时所需的操作,但是当我使用它时,它会在字符串中留下实际的空白空间.所以"#hello"变成"你好",我真的希望它是"你好".我可以使用不同的方法或我可以用来实现我想要的不同参数吗?

java

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

是否有等效于 Python 的 Counter 集合的 F#?

希望将一些 Python 代码移植到 F#。我是两种语言的新手。Python 代码使用“Counter”集合,“其中元素存储为字典键,它们的计数存储为字典值”。以 Python 为例:

cnt = Counter()

for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']
   cnt[word] += 1

cnt
Counter({'blue': 3, 'red': 2, 'green': 1})

>> # Tally occurrences of words in a list
>> cnt = Counter()

>> for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:

>> ... cnt[word] += 1

>> cnt

>> Counter({'blue': 3, 'red': 2, 'green': 1})
Run Code Online (Sandbox Code Playgroud)

是否有等效于 Python 的 Counter 集合的 F#?

python f# counter

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

如何在不使用 .split 和 .strip 函数的情况下编写自己的 split 函数?

如何编写自己的分割函数?我只是认为我应该删除空格,'\t'并且'\n'. 但由于知识匮乏,我没有想法做这道题

这是原来的问题:

编写一个函数 split(string),返回给定字符串中的单词列表。单词可以用一个或多个空格' '、制表符 '\t'或换行符分隔'\n'

还有例子:

words = split('duff_beer 4.00') # ['duff_beer', '4.00']
words = split('a b c\n') # ['a', 'b', 'c']
words = split('\tx y \n z ') # ['x', 'y', 'z']
Run Code Online (Sandbox Code Playgroud)

限制:请勿使用该str.split方法!不要使用该str.strip方法

python python-3.x

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

将文件utf8转换为utf16 java

我正在尝试使用Java应用程序将文件从UTF-8转换为UTF-16

但是我的输出竟然是这样的????????????????????????????????????????????? ?????????????????????????????????????????????

最终,输出应该是相同的utf8 = ???? utf16 = \ u0633 \ u0644 \ u0627 \ u0645

import java.io.*;

class WriteUTF8Data<inbytes> {
    WriteUTF8Data() throws UnsupportedEncodingException {
    }

    public static void main(String[] args) throws IOException {
        System.setProperty("file.encoding","UTF-8");

        byte[] inbytes = new byte[1024];

        FileInputStream fis = new FileInputStream("/home/mehrad/Desktop/PerkStoreNotification(1).properties");
        fis.read(inbytes);
        FileOutputStream fos = new FileOutputStream("/home/mehrad/Desktop/PerkStoreNotification(2).properties");
        String in = new String(inbytes, "UTF16");
        fos.write(in.getBytes());
    }
}
Run Code Online (Sandbox Code Playgroud)

java

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

我的质数程序中的指数引发内存错误,我该如何解决?

if (2 ** (tester - 1)) % tester == 1:  # Fermat's little theorem      #
    if prime_line.count(tester) == 0:                                 #
        prime_line.append(tester)
Run Code Online (Sandbox Code Playgroud)

我正在使用一个程序,该程序接受任何值或字符串或其组合的多个行输入,并返回该集中的任何当前素数。我正在使用费马定理来测试数字是否为质数,以最大程度地减少处理时间。在上述代码中,已经删除了字母的数字(例如194394788347)(开始输入将是1943jds9478cxbfhjvbfd8347)在进行指数计算时会产生内存错误。有什么办法解决这个问题?

python memory out-of-memory exponent python-3.x

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

是否有将dict转换为[k1,v1,k2,va]的更好方法?

现在我正在使用以下方法,但我觉得有更好的方法:

data = { "foo": 5, "bar": 10}
l = []
for k in data:
  l.append(k)
  l.append(data[k])

print(l)
Run Code Online (Sandbox Code Playgroud)

我正在利用Postgres的参数化查询。所以我试图从数据字典构建数组。

虽然这确实给了我一个答案,但我一直认为这4条线可能会有点凝结

python python-3.x

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

同步方法中的重入

同步方法是可重入的吗

我有这个代码:

public class Main {
    
    synchronized void m1() {
        //some code
        m2();
        //some code
    }
    
    synchronized void m2(){
        //some code
    }    
    
}
Run Code Online (Sandbox Code Playgroud)

m1()假设两个线程(线程 A 和线程 B)尝试同时访问。线程 A首先获取。一段时间后,线程 A调用m2(),它也在同一个对象上同步。

因为我不想做任何猜测,有人可以告诉我:当线程 A调用时,是否能保证会发生什么m2()?我的意思是,一旦线程 A调用m2(),它是否会“离开锁定”?因为从技术上讲它离开了方法的框架,那么它也会离开锁吗?

[编辑]:线程 Am2()每次调用它后都会运行吗?或者它是否留下,以便线程 A线程 B都可以争夺它们的目标?

java multithreading locking reentrancy

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