我有一个中等大小的xlsx文件(大约14 MB),OpenOffice挂起试图打开它.我按照本教程尝试使用openpyxl来阅读内容.代码段如下:
from openpyxl import load_workbook
wb = load_workbook(filename = 'large_file.xlsx', use_iterators = True)
ws = wb.get_sheet_by_name(name = 'big_data')
Run Code Online (Sandbox Code Playgroud)
问题是,我不知道工作表名称,而Sheet1/Sheet2 ..等不起作用(返回NoneType对象).我找不到一个文档告诉我如何使用openpyxl获取xlsx文件的工作表名称.谁能帮我?
我对Scala很新,所以这个问题可能很天真.
我有这样的清单List[Int] = List(0, 3, 6, 12, 14, 15, 16, 17).我正在尝试创建这样的列表[(0,3),(3,6),(6,12)..],依此类推.到目前为止,这是我尝试过的:
val l1= List(0, 3, 6, 12, 14, 15, 16, 17)
var l2=scala.collection.mutable.ListBuffer[(Int,Int)]()
l1.zipWithIndex.slice(0,l1.length-1).foreach(x=>{val newval=(x._1,l1(x._2+1)); l2+=newval})
Run Code Online (Sandbox Code Playgroud)
这里有两个问题:
val newval,即尝试这样做l1.zipWithIndex.slice(0,l1.length-1).foreach(x=>l2+=(x._1,l1(x._2+1))),编译器说:
<console>:10: error: type mismatch;
found : Int
required: (Int, Int)
l1.zipWithIndex.slice(0,l1.length-1).foreach(x=>l2+=(x._1,l1(x._2+1))).这是为什么?我有一组矩形,我需要根据它们之间的欧几里得距离将它们聚集在一起。附图中解释了这种情况。
。
一种可能的方法是取每个矩形的中心并使用 K 均值对中心点进行聚类(距离函数将是 XY 平面中的欧几里德距离)。但是,我想知道是否有其他方法可以解决这个问题,它不通过中心点来近似矩形,而是考虑矩形的实际形状。
我正在尝试以编程方式从 PDF 页面中裁剪出一个区域。具体来说,我的输入将是单页 PDF 和页面上的边界框。输出将是一个包含原始 PDF 中的字符、图形路径和图像的 PDF,它应该看起来像原始 PDF。换句话说,我想要一个类似于从图像中裁剪区域的功能,但使用 PDF。
三个问题:
有可能做到吗?根据我对 PDF 的了解,这似乎是可能的。但我不是专家,所以我想先知道这里是否有我遗漏的东西。
有没有这方面的开源软件?
PDFBox 目前可以这样做吗?我找不到这样的功能,但我可能已经错过了。有人知道这样做的任何尝试吗?
from dataclasses import dataclass
@dataclass
class A:
x: str
y: str
def __post_init__(self):
self.z = self.x+self.y
Run Code Online (Sandbox Code Playgroud)
a = A('abc', 'def')
a.z
'abcdef'
from dataclasses import asdict
asdict(a)
{'x': 'abc', 'y': 'def'}
Run Code Online (Sandbox Code Playgroud)
可以看出,z并没有被序列化。如何序列化它(除了调用__dict__它之外)?
我有一个列表val l=List(4,3,2,1),我正在尝试生成格式的元组列表,(4,3), (4,2)依此类推.
这是我到目前为止所拥有的:
for (i1<-0 to l.length-1;i2<-i1+1 to l.length-1) yield (l(i1),l(i2))
输出是: Vector((4,3), (4,2), (4,1), (3,2), (3,1), (2,1))
两个问题:
它生成一个Vector,而不是一个List.这两者有何不同?
这是这样idiomatic scala做的方式吗?我对Scala很新,所以对我来说,我学得很对.
该WEKA SimpleKMeans实现允许用户指定一个"种子值"与-s选项.我不明白它的意思.在这个链接中,weka架构师Mark Hall说它应该生成随机数.
Weka实现应该遵循关于KMenas ++的文章(如文档中所述),如果我理解了它,则使用前面提到的论文中的方程1b,第2.2页第3页来确定聚类质心点,并且没有其他来源随机性.
任何人都可以指出我错了什么?
我有一个字符串,它将显示在html文件中.字符串中的某些单词(标记为"spc")需要以黄色背景和较大的字体显示.
我试图使用render_to_response方法将字符串(称为tdoc)发送到html文件.我用div标签替换了字符串中的'spc'标签.假设,在更换后,部分字符串是 we would seldom be prepared to <div id="spcl">examine</div> every.我的django代码看起来像render_to_response('a.html',{'taggeddoc':tdoc})
在我的CSS中,我有以下代码
#spcl {
background-color: #FFFF00;
font-size:15px;
}
Run Code Online (Sandbox Code Playgroud)
所以,我应该看到粗体字和黄色背景中的单词检查,但我没有看到.当我查看渲染的html的源代码时,它具有以下子字符串We would seldom be prepared to <div id="spcl">examine</div> every而不是原始字符串.
如何以所需方式显示"检查"和类似词语?
我有一个对象mypath的2D列表List<List<Object>> mypath = new ArrayList<List<Object>>();.假设我有以下代码行
mypath.add(temppath);
System.out.println("mypath: "+mypath.get(mypath.size()-1));
temppath.clear();
System.out.println("mypath: "+mypath.get(mypath.size()-1));
Run Code Online (Sandbox Code Playgroud)
我从第一个print语句中看到一个对象列表,但是从第二个print中看到一个空列表.当我清除temppath时,mypath的元素也会被清除.有办法解决这个问题吗?我可以清除temppath,而不清除mypath的最后一个元素吗?
我有一个数组x=np.array([[0,1,2,],[0,0,0],[3,4,0],[1,2,3]]),我想获取 x=[0,0,0] 处的索引,即 1。我尝试np.where(x==[0,0,0])导致(array([0, 1, 1, 1, 2]), array([0, 0, 1, 2, 2])). 我怎样才能得到想要的答案?
我有一个列表,我正在尝试编写一个函数returnMatchedElement(x:Int,y:Int,f:(Int,Int)=>Boolean),如果某个条件匹配列表的元素,它将返回该元素.这是我到目前为止所得到的:
def returnMatchedElement(x:Int,l:List[Int],f:(Int,Int)=>Boolean):Int={
for (y<-l if f(x,y)) yield y
0}
def matchElements(a:Int,b:Int):Boolean= {if a==b true else false}
val l1=List(1,2,3,4,5)
returnMatchedElement(3,l1,matchElements)
res13: Int = 0
Run Code Online (Sandbox Code Playgroud)
我猜我在理解yield关键字方面遇到了问题.我在这里弄错了什么?
下面的答案有效(感谢),但前提是f返回布尔值.我尝试了另一个这样的例子
def matchElements(a:Int,b:Int):Int= {if (a==b) 1 else 0}
def returnMatchedElement(x:Int,l:List[Int],f:(Int,Int)=>Int):Option[Int]={l.find(y => f(x, y))}
Run Code Online (Sandbox Code Playgroud)
现在编译器说
<console>:8: error: type mismatch;
found : Int
required: Boolean
def returnMatchedElement(x:Int,l:List[Int],f:(Int,Int)=>Int):Option[Int]={l.find(y => f(x, y))}
Run Code Online (Sandbox Code Playgroud)