Questions tagged «python»

Python是一种多范式,动态类型的多用途编程语言。它旨在快速学习,理解和使用并强制使用干净统一的语法。请注意,Python 2自2020年1月1日起已不再受支持。不过,对于特定于版本的Python问题,请添加[python-2.7]或[python-3.x]标签。使用Python变体或库(例如Jython,PyPy,Pandas,Numpy)时,请将其包含在标签中。

10
Python中的Haversine公式(两个GPS点之间的轴承和距离)
问题 我想知道如何获取2个GPS点之间的距离和方位。我研究了haversine配方。有人告诉我,我也可以使用相同的数据找到轴承。 编辑 一切正常,但是轴承还不能正常工作。轴承输出为负,但应在0-360度之间。设定数据应为水平方向,96.02166666666666 且为: Start point: 53.32055555555556 , -1.7297222222222221 Bearing: 96.02166666666666 Distance: 2 km Destination point: 53.31861111111111, -1.6997222222222223 Final bearing: 96.04555555555555 这是我的新代码: from math import * Aaltitude = 2000 Oppsite = 20000 lat1 = 53.32055555555556 lat2 = 53.31861111111111 lon1 = -1.7297222222222221 lon2 = -1.6997222222222223 lon1, lat1, lon2, lat2 = …

8
python multithreading等到所有线程完成
可能是在类似的情况下提出的,但是经过大约20分钟的搜索,我无法找到答案,所以我会提出。 我写了一个Python脚本(让我们说:scriptA.py)和一个脚本(让我们说scriptB.py)。 在scriptB中,我想使用不同的参数多次调用scriptA,每次运行大约需要一个小时(它是一个巨大的脚本,做了很多事情。。不用担心),并且我希望能够运行scriptA同时具有所有不同的参数,但是我需要等到所有参数都完成后才能继续;我的代码: import subprocess #setup do_setup() #run scriptA subprocess.call(scriptA + argumentsA) subprocess.call(scriptA + argumentsB) subprocess.call(scriptA + argumentsC) #finish do_finish() 我想同时运行所有程序subprocess.call(),然后等到它们全部完成后,该怎么办? 我试图像这里的例子一样使用线程: from threading import Thread import subprocess def call_script(args) subprocess.call(args) #run scriptA t1 = Thread(target=call_script, args=(scriptA + argumentsA)) t2 = Thread(target=call_script, args=(scriptA + argumentsB)) t3 = Thread(target=call_script, args=(scriptA + …

5
numpy:将每行除以一个向量元素
假设我有一个numpy数组: data = np.array([[1,1,1],[2,2,2],[3,3,3]]) 我有一个对应的“向量”: vector = np.array([1,2,3]) 我如何data沿着每一行进行减法或除法运算,所以结果是: sub_result = [[0,0,0], [0,0,0], [0,0,0]] div_result = [[1,1,1], [1,1,1], [1,1,1]] 长话短说:如何使用对应于每一行的1D标量数组在2D数组的每一行上执行操作?
119 python  arrays  numpy  scipy 


3
numpy.histogram()如何工作?
在阅读numpy时,我遇到了函数numpy.histogram()。 它是做什么用的,它是如何工作的?他们在文档中提到了bin:它们是什么? 一些谷歌搜索使我大致了解直方图的定义。我明白了。但不幸的是,我无法将这些知识与文档中给出的示例联系起来。
119 python  numpy  histogram 

16
如何在Python中创建一个简单的消息框?
我正在寻找与alert()JavaScript 相同的效果。 我今天下午使用Twisted.web编写了一个基于Web的简单解释器。您基本上是通过表单提交Python代码块的,客户端来抓取并执行它。我希望能够做出一个简单的弹出消息,而不必每次都重写一堆样板的wxPython或TkInter代码(因为该代码是通过表单提交的,然后消失了)。 我尝试过tkMessageBox: import tkMessageBox tkMessageBox.showinfo(title="Greetings", message="Hello World!") 但这会在后台用tk图标打开另一个窗口。我不要这个 我一直在寻找一些简单的wxPython代码,但是它总是需要设置一个类并进入应用程序循环等。在Python中没有简单易行的方法来制作消息框吗?
119 python  wxpython  tkinter 


10
如何从Python异步运行外部命令?
我需要从Python脚本异步运行Shell命令。我的意思是,我希望我的Python脚本能够在外部命令关闭并继续执行所需操作的同时继续运行。 我读了这篇文章: 在Python中调用外部命令 然后我os.system()去做了一些测试,如果我&在命令末尾使用它,看起来就可以完成这项工作,这样我就不必等待它返回。我想知道的是,这是否是完成此任务的正确方法?我试过了,commands.call()但是对我来说不起作用,因为它会阻塞外部命令。 请告诉我是否os.system()建议这样做,或者我应该尝试其他方法。

10
如何在python中从变量参数(kwargs)设置类属性
假设我有一个带有构造函数(或其他函数)的类,该类接受可变数量的参数,然后有条件地将其设置为类属性。 我可以手动设置它们,但是似乎变量参数在python中足够普遍,因此应该有一个共同的习惯用法。但是我不确定如何动态地执行此操作。 我有一个使用eval的示例,但这并不安全。我想知道正确的方法-也许用lambda吗? class Foo: def setAllManually(self, a=None, b=None, c=None): if a!=None: self.a = a if b!=None: self.b = b if c!=None: self.c = c def setAllWithEval(self, **kwargs): for key in **kwargs: if kwargs[param] != None eval("self." + key + "=" + kwargs[param])
119 python 

6
如何将数据作为字符串(而非文件)写入CSV格式?
我想将数据[1,2,'a','He said "what do you mean?"']转换为CSV格式的字符串。 通常会用到csv.writer()它,因为它处理所有疯狂的情况(逗号转义,引号转义,CSV方言等)。捕获的结果是csv.writer()期望输出到文件对象,而不是字符串。 我当前的解决方案是此功能有点怪异: def CSV_String_Writeline(data): class Dummy_Writer: def write(self,instring): self.outstring = instring.strip("\r\n") dw = Dummy_Writer() csv_w = csv.writer( dw ) csv_w.writerow(data) return dw.outstring 谁能提供一种仍然可以很好地处理边缘情况的更优雅的解决方案? 编辑:这是我最终完成的方式: def csv2string(data): si = StringIO.StringIO() cw = csv.writer(si) cw.writerow(data) return si.getvalue().strip('\r\n')
119 python  string  csv 

7
您如何在python中执行简单的“ chmod + x”操作?
我想从可执行的python脚本中创建文件。 import os import stat os.chmod('somefile', stat.S_IEXEC) 它似乎os.chmod没有像unix chmod那样“添加”权限。在最后一行注释掉的情况下,文件具有filemode -rw-r--r--,而在未注释掉的情况下,文件模式为---x------。如何u+x在保持其余模式不变的同时添加标志?
119 python  chmod 

11
将列表转换为集合会更改元素顺序
最近,我注意到当我将a转换list为set元素的顺序发生变化,由字符排序。 考虑以下示例: x=[1,2,20,6,210] print x # [1, 2, 20, 6, 210] # the order is same as initial order set(x) # set([1, 2, 20, 210, 6]) # in the set(x) output order is sorted 我的问题是- 为什么会这样呢? 如何进行设置操作(尤其是“设置差异”)而不丢失初始顺序?
119 python  set 

3
如何在大熊猫中测试字符串是否包含列表中的子字符串之一?
有没有这将是一个组合的等同的任何功能df.isin()和df[col].str.contains()? 例如,假设我有系列 s = pd.Series(['cat','hat','dog','fog','pet']),并且我想找到s包含的任何一个的所有地方['og', 'at'],那么我想得到除“宠物”以外的所有东西。 我有一个解决方案,但这很不雅致: searchfor = ['og', 'at'] found = [s.str.contains(x) for x in searchfor] result = pd.DataFrame[found] result.any() 有一个更好的方法吗?

8
Python请求和持久会话
我正在使用请求模块(Python 2.5的版本0.10.0)。我已经找到了如何将数据提交到网站上的登录表单并检索会话密钥的方法,但是我看不到在后续请求中使用此会话密钥的明显方法。有人可以在下面的代码中填写省略号还是建议其他方法? >>> import requests >>> login_data = {'formPosted':'1', 'login_email':'me@example.com', 'password':'pw'} >>> r = requests.post('https://localhost/login.py', login_data) >>> >>> r.text u'You are being redirected <a href="profilePage?_ck=1349394964">here</a>' >>> r.cookies {'session_id_myapp': '127-0-0-1-825ff22a-6ed1-453b-aebc-5d3cf2987065'} >>> >>> r2 = requests.get('https://localhost/profile_data.json', ...)


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.