Questions tagged «python»

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

15
如何在Spark中关闭INFO日志记录?
我使用AWS EC2指南安装了Spark,并且可以使用bin/pyspark脚本正常启动该程序以获取Spark 提示,并且还可以成功执行快速入门Quide。 但是,我无法终生解决如何INFO在每个命令后停止所有冗长的日志记录。 我在下面的代码(注释掉,设置为OFF)中的几乎所有可能的情况下都尝试了log4j.properties该conf文件夹,该文件夹位于我从中以及在每个节点上启动应用程序的文件夹中,没有任何反应。INFO执行每个语句后,我仍然可以打印日志记录语句。 我对应该如何工作感到非常困惑。 #Set everything to be logged to the console log4j.rootCategory=INFO, console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.target=System.err log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n # Settings to quiet third party logs that are too verbose log4j.logger.org.eclipse.jetty=WARN log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INFO 这是我使用时的完整类路径SPARK_PRINT_LAUNCH_COMMAND: Spark命令:/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bin/java -cp:/root/spark-1.0.1-bin-hadoop2/conf:/root/spark-1.0.1 -bin-hadoop2 / conf:/root/spark-1.0.1-bin-hadoop2/lib/spark-assembly-1.0.1-hadoop2.2.0.jar:/root/spark-1.0.1-bin-hadoop2/lib /datanucleus-api-jdo-3.2.1.jar:/root/spark-1.0.1-bin-hadoop2/lib/datanucleus-core-3.2.2.jar:/root/spark-1.0.1-bin-hadoop2 /lib/datanucleus-rdbms-3.2.1.jar -XX:MaxPermSize = 128m -Djava.library.path …

10
使用numpy构建两个数组的所有组合的数组
我试图在尝试使用6参数函数的参数空间之前先研究它的数值行为,然后再尝试对其进行复杂的处理,因此我正在寻找一种有效的方法来执行此操作。 我的函数采用给定6维numpy数组作为输入的float值。我最初尝试做的是: 首先,我创建了一个函数,该函数接受2个数组并生成一个包含两个数组中值的所有组合的数组 from numpy import * def comb(a,b): c = [] for i in a: for j in b: c.append(r_[i,j]) return c 然后我将reduce()其应用于同一数组的m个副本: def combs(a,m): return reduce(comb,[a]*m) 然后我像这样评估我的功能: values = combs(np.arange(0,1,0.1),6) for val in values: print F(val) 这有效,但是太慢了。我知道参数的空间很大,但这不应该太慢。在此示例中,我仅采样了10 6(一百万)个点,仅花费了15秒以上的时间便创建了数组values。 您知道使用numpy进行此操作的更有效的方法吗? F如果需要,我可以修改函数接受参数的方式。


4
根据正则表达式分割字符串
我有表格形式的命令输出。我正在从结果文件中解析此输出,并将其存储在字符串中。一行中的每个元素都由一个或多个空格字符分隔,因此我正在使用正则表达式来匹配1个或多个空格并将其拆分。但是,每个元素之间都会插入一个空格: >>> str1="a b c d" # spaces are irregular >>> str1 'a b c d' >>> str2=re.split("( )+", str1) >>> str2 ['a', ' ', 'b', ' ', 'c', ' ', 'd'] # 1 space element between!!! 有一个更好的方法吗? 每次拆分后都会str2添加到列表中。
143 python  regex 


13
2个列表之间的共同元素比较
def common_elements(list1, list2): """ Return a list containing the elements which are in both list1 and list2 >>> common_elements([1,2,3,4,5,6], [3,5,7,9]) [3, 5] >>> common_elements(['this','this','n','that'],['this','not','that','that']) ['this', 'that'] """ for element in list1: if element in list2: return list(element) 到现在为止,但是似乎无法正常工作! 有任何想法吗?
143 python  list 

5
修改熊猫数据框中的行的子集
假设我有一个带有两列A和B的pandas DataFrame。我想修改此DataFrame(或创建一个副本),以便每当A为0时B始终为NaN。我将如何实现? 我尝试了以下 df['A'==0]['B'] = np.nan 和 df['A'==0]['B'].values.fill(np.nan) 没有成功。
143 python  pandas 

5
Python的“ in”集合运算符
我in对集合的python 运算符有些困惑。 如果我有一组s与某些情况下b,是不是真的b in s意味着“ 是有一些因素x在s这样b == x的true ”?
143 python 

11
更改Python的默认编码?
从控制台运行应用程序时,Python存在许多“无法编码”和“无法解码”的问题。但是在 Eclipse PyDev IDE中,默认字符编码设置为UTF-8,我很好。 我到处搜索以设置默认编码,人们说Python删除了 sys.setdefaultencoding在启动时函数,因此我们无法使用它。 那么什么是最好的解决方案?

10
如何将多个语句放在一行中?
我不确定要确切地考虑这个问题的标题,如果不太明确,编码高尔夫似乎是合适的。 我对python有一点了解,但似乎很难“阅读”。我的理解方式可能与以下代码相同: for i in range(10): if i == 9: print('i equals 9') 这段代码比当前的理解方法更容易阅读,但是我注意到您不能在一行中包含两个“:”……这也给我带来了…… 我的问题: 有什么办法可以使下面的示例进入一行。 try: if sam[0] != 'harry': print('hello', sam) except: pass 这样的事情会很棒: try: if sam[0] != 'harry': print('hellp', sam) except:pass 但是我又遇到了冲突的':',我也很想知道是否有一种方法可以不加尝试地运行try(或类似的东西),我似乎完全没有意义,我只需要在其中放入else:pass即可。它是一条浪费的线路。 谢谢您的输入...这里有一个笑脸:D
143 python 

10
代码完成时发出声音警报
我处于这样一种情况,我的代码要花很长时间才能运行,并且我不想一直盯着它,但想知道何时完成。 完成后,如何使(Python)代码听起来像是“警报”?我当时正在考虑使其在代码末尾时播放.wav文件... 这甚至是可行的想法吗?如果是这样,我该怎么办?
143 python  alarm  audio 

1
Python将字节写入文件
我有一个返回字符串的函数。该字符串包含回车符和换行符(0x0D,0x0A)。但是,当我写入文件时,它仅包含换行符。有没有一种方法可以使输出包括回车和换行符。 msg = function(arg1, arg2, arg3) f = open('/tmp/output', 'w') f.write(msg) f.close()
143 python 

10
JSON转换为Pandas DataFrame
我想做的是沿着经纬度坐标指定的路径从Google Maps API中提取海拔数据,如下所示: from urllib2 import Request, urlopen import json path1 = '42.974049,-81.205203|42.974298,-81.195755' request=Request('http://maps.googleapis.com/maps/api/elevation/json?locations='+path1+'&sensor=false') response = urlopen(request) elevations = response.read() 这给了我一个看起来像这样的数据: elevations.splitlines() ['{', ' "results" : [', ' {', ' "elevation" : 243.3462677001953,', ' "location" : {', ' "lat" : 42.974049,', ' "lng" : -81.205203', ' },', ' "resolution" : …

12
在jupyter笔记本中折叠单元格
我正在使用ipython Jupyter笔记本。假设我定义了一个在屏幕上占用很多空间的函数。有没有办法让牢房塌陷? 我希望函数保持执行和可调用状态,但是我想隐藏/折叠单元格以便更好地可视化笔记本。我怎样才能做到这一点?

4
鼻子测试正在捕获我的打印语句的输出。如何规避呢?
当我打字 $ nosetests -v mytest.py 通过所有测试后,我的所有打印输出均被捕获。我想查看打印输出,即使一切都通过了。 因此,我要做的是强制声明错误以查看输出,如下所示。 class MyTest(TestCase): def setUp(self): self.debug = False def test_0(self): a = .... # construct an instance of something # ... some tests statements print a.dump() if self.debug: eq_(0,1) 感觉很难受,必须有更好的方法。请赐教。
142 python  nosetests 

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.