Questions tagged «python»

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

9
在Pandas DataFrame中将无效值替换为None
None在Python的Pandas中,是否有任何方法可以替换值? 您可以使用df.replace('pre', 'post')另一个值并将其替换,但是如果要替换为None值,则无法完成此操作,如果尝试使用该值,则会得到奇怪的结果。 所以这是一个例子: df = DataFrame(['-',3,2,5,1,-5,-1,'-',9]) df.replace('-', 0) 返回成功的结果。 但, df.replace('-', None) 返回以下结果: 0 0 - // this isn't replaced 1 3 2 2 3 5 4 1 5 -5 6 -1 7 -1 // this is changed to `-1`... 8 9 为什么会返回如此奇怪的结果? 由于我想将此数据框倒入MySQL数据库,因此我不能将NaN值放入数据框的任何元素中,而是要放置None。当然,您可以先更改'-'为NaN,然后再转换NaN为None,但是我想知道为什么数据框以这种可怕的方式起作用。 已在Python 2.7和OS X 10.8的pandas 0.12.0开发人员上进行了测试。Python是OS …

2
如何查看在Django的manage.py test命令期间运行了哪些测试
使用Django的manage.py test命令完成测试执行后,只有通过测试的数量会打印到控制台。 (virtualenv) G:\Project\>python manage.py test Creating test database for alias 'default'... True .. ---------------------------------------------------------------------- Ran 2 tests in 0.017s OK Destroying test database for alias 'default'... 有什么办法看: 实际执行了哪些测试 从哪个模块 以什么顺序 我尚未在文档中找到任何解决方案。

2
Django使用参数返回redirect()
在我的视图函数中,我想调用另一个视图并将数据传递给它: return redirect('some-view-name', backend, form.cleaned_data) ,其中backend是registration.backends对象,而form.cleaned_data是表单数据的字典(但必须同时以* args或** kwargs形式发送,以防止引发Don't mix *args and **kwargs in call to reverse()!错误)。根据我在文档中找到的内容: def my_view(request): ... return redirect('some-view-name', foo='bar') 看来我需要提供“ some-view-name”参数,但这仅仅是视图函数的名称还是url的名称?因此,我想使其与在django-registration中完成的方式类似,其中: to, args, kwargs = backend.post_registration_redirect(request, new_user) return redirect(to, *args, **kwargs) def post_registration_redirect(self, request, user): return ('registration_complete', (), {}) 好吧,现在,我可以直接调用视图函数还是需要为其提供URL?还有更重要的是,我的funciotn调用(如果需要,还有一个网址)应该是什么样子?后端和cleaned_data都通过此视图传递,以供以后使用。我已经尝试过了,但这是不合适的: url(r'^link/$', some-view-name) def some-view-name(request, *args): 以及这个: return …



7
如何通过发电机循环
一个人如何循环通过发电机?我是这样想的: gen = function_that_returns_a_generator(param1, param2) if gen: # in case the generator is null while True: try: print gen.next() except StopIteration: break 还有更pythonic的方式吗?
80 python  generator 

7
位置参数与关键字参数
基于此 位置参数是一个名称,后跟等号(=)和默认值。 关键字参数后跟一个等号和一个给出其默认值的表达式。 def rectangleArea(width, height): return width * height print rectangleArea(width=1, height=2) 问题>我认为width和height都是位置参数。那为什么还要用关键字参数语法来调用它呢?
80 python 

5
python:在一定条件下从列表(序列)获取项目数
假设我有一个包含大量项目的列表。 l = [ 1, 4, 6, 30, 2, ... ] 我想从该列表中获取项目数,其中一个项目应满足一定条件。我的第一个想法是: count = len([i for i in l if my_condition(l)]) 但是,如果my_condition()过滤列表中也包含大量项目,我认为为过滤结果创建新列表只是浪费内存。为了提高效率,恕我直言,上面的通话不能比以下更好: count = 0 for i in l: if my_condition(l): count += 1 是否有任何功能样式的方法来获得满足特定条件的项目数而不生成临时列表? 提前致谢。

9
从字符串动态导入文件中的方法
我有一个字符串,说:abc.def.ghi.jkl.myfile.mymethod。如何动态导入mymethod? 这是我的处理方法: def get_method_from_file(full_path): if len(full_path) == 1: return map(__import__,[full_path[0]])[0] return getattr(get_method_from_file(full_path[:-1]),full_path[-1]) if __name__=='__main__': print get_method_from_file('abc.def.ghi.jkl.myfile.mymethod'.split('.')) 我想知道是否完全需要导入单个模块。 编辑:我正在使用Python版本2.6.5。


2
如果不创建表单,是否可以使Django中不需要的管理字段?
每次我在Django的Admin部分中输入新播放器时,都会收到一条错误消息,提示“此字段为必填字段。”。 有没有一种方法可以使不需要创建自定义表单的字段成为必填字段?我可以在models.py或admin.py中执行此操作吗? 这是我在models.py中的类的样子。 class PlayerStat(models.Model): player = models.ForeignKey(Player) rushing_attempts = models.CharField( max_length = 100, verbose_name = "Rushing Attempts" ) rushing_yards = models.CharField( max_length = 100, verbose_name = "Rushing Yards" ) rushing_touchdowns = models.CharField( max_length = 100, verbose_name = "Rushing Touchdowns" ) passing_attempts = models.CharField( max_length = 100, verbose_name = "Passing …

11
禁止在__init__之外创建新属性
我希望能够创建一个用Python初始化的类(在Python中),该类__init__不接受新属性,但接受对现有属性的修改。我可以通过几种方法来做到这一点,例如,使用__setattr__诸如 def __setattr__(self, attribute, value): if not attribute in self.__dict__: print "Cannot set %s" % attribute else: self.__dict__[attribute] = value 然后__dict__直接在内部进行编辑__init__,但是我想知道是否存在“正确”的方法?

2
在python中取消设置Linux环境变量的正确方法是什么?
从文档中: 如果平台支持该unsetenv()功能,则可以删除此映射中的项目以取消设置环境变量。unsetenv()当从os.environ中删除一个项目,pop()或者clear()调用或方法之一时,将自动调用。 但是,我希望无论是否可用,它都将起作用unsetenv()。如果不可用,如何从映射中删除项目?os.environ['MYVAR'] = None?

7
Django rest框架序列化多对多字段
如何将多对多字段序列化为列表,然后通过rest框架返回它们?在下面的示例中,我尝试返回该帖子以及与其关联的标签列表。 models.py class post(models.Model): tag = models.ManyToManyField(Tag) text = models.CharField(max_length=100) serializers.py class PostSerializer(serializers.ModelSerializer): class Meta: model = Post fields = ("text", "tag"??) views.py class PostViewSet(viewsets.ReadOnlyModelViewSet): queryset = Post.objects.all() serializer_class = PostSerializer

7
如何不使用pip install从tar.gz文件安装Python软件包
长话短说,我的工作计算机有网络限制,这意味着尝试pip install在cmd中使用只会导致超时/找不到包错误。 例如; 当我尝试pip install seaborn: 相反,我尝试下载所需软件包的tar.gz文件,但是,我不知道如何安装它们。我已经从tar.gz文件中提取了文件,并且里面有一个“设置”文件,但是对我来说并没有多大作用。 如果有人可以解释如何以这种方式安装python软件包而无需pip install在Windows上使用,那将是惊人的。

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.