ICode9

精准搜索请尝试: 精确搜索
  • python的GIL2019-12-15 14:52:02

    一、GIL是什么,它为什么会存在   python被人诟病最多的大概就是它的GIL全局锁了,但我今天要为它正名,这与python本身没有关系,而是与它的解释器有关系。   我们知道,python代码编写好,最终运行的是一个.py的文件,运行代码的过程,其实就是让解释器把我们编写的代码解释给机器能识别的语

  • Java的CPython吗?2019-12-09 00:55:46

    我需要从Java调用CPython代码.有哪些工具/ API /库可以帮助我做到这一点? Jython不是一个选择,因为Python代码在很大程度上取决于numpy. 编辑1:main()函数应该是Java,而不是Python(即我需要将CPython嵌入Java中,反之亦然) 编辑2:我还应该提到,我将在Java和Python之间传递大型数值数组,

  • 可以通过内存地址访问对象吗?2019-12-08 03:08:55

    在CPython中,内置函数id(x)返回x的内存地址. 有可能扭转这种情况吗? 类似于object_by_memoryadress(id(x))== x. 更新:我需要这个的原因是,因为我正在使用带有嵌入式Python的程序.在此程序中,我可以创建可以互相通信的“节点”,但只能与整数,字符串和其他东西通信,但是我需要在它们之

  • Elixir for Python 3?2019-12-02 02:59:28

    尽管我已经成功安装了SqlAlchemy 0.7.3,但我在使用Python 3安装Elixir时遇到了问题?我已经尝试了google-ing,但是却失去了希望.确实有适用于Python 3的Elixir版本吗?提前致谢.解决方法:看一下source code,我看到latest change发生在10个月前.另外,在搜索print时,我发现在所有分支中找

  • Python中可能存在混合缩进?2019-11-23 06:09:39

    看this问题,我在机器上尝试了OP的代码.这是text version和屏幕截图: 刚刚发生了什么?这应该是平方函数,并且已正确实现.可以肯定的是,我复制粘贴了代码,然后再次尝试: 好吧,我看不到这些版本的Square之间有任何区别,但只有后者有效. 我能想到的唯一原因是我可能混用了制表符和空格,因

  • 为什么我可以在Python中访问看似任意的内存地址?2019-11-20 07:56:03

    我在NumPy中使用strides进行游戏,我意识到您可以轻松地超越数组的界限: >>> import numpy as np >>> from numpy.lib.stride_tricks import as_strided >>> a = np.array([1], dtype=np.int8) >>> as_strided(a, shape=(2,), strides=(1,)) array([ 1, -28], dtyp

  • python-重新定义“ for”运算符2019-11-18 18:57:47

    是否有任何方法可以重新定义或使用与不需要重新编译CPython相同的语法定义新的运算符? IE浏览器,像这样 gfor i in range(10): i+=1 解决方法:不. for是关键字,而不是运算符.因此,它是解析器等的一部分.您不能在不更改其核心语言的情况下对其进行更改(例如,您甚至必须更改构建Py

  • Python开发人员指南2019-11-16 17:56:11

    本指南是一个全面的资源贡献 给Python的 -为新的和经验丰富的贡献者。这是 保持由维护的Python同一社区。我们欢迎您对Python的贡献! 快速参考 这是设置和添加补丁所需的基本步骤。了解基础知识后,这就是清单。有关完整说明,请参阅安装指南。 安装并设置Git和其他依赖项(有关详

  • https://github.com/python/cpython/blob/master/Doc/library/contextlib.rst2019-11-11 21:01:14

        # -*- coding: utf-8 -*-import timefrom threading import Lock, RLockfrom datetime import datetimefrom threading import Threadimport threadingclass Test: def __init__(self): self.obj_lock = Lock() self.obj_rlock = RLock() self.a

  • 时间到Py_INCREF?2019-11-09 01:58:07

    我正在开发C扩展,并且正要跟踪内存泄漏.通过阅读Python文档,很难理解何时增加/减少Python对象的引用计数.另外,在花几天时间尝试嵌入Python解释器(以便将该扩展编译为独立程序)之后,我不得不放弃这一努力.因此,像Valgrind这样的工具在这里无能为力. 到目前为止,通过反复试验,我了解

  • 在C Python扩展中动态生成并返回Python列表2019-11-07 00:55:27

    我正在编写一个Python extension in C,并且试图弄清楚如何使用扩展名动态构建和返回Python列表.我知道如何使用Py_BuildValue建立预定大小的列表.是否可以使用Py_BuildValue创建列表,然后将项目追加到该列表?有其他更好的选择吗?解决方法:就像在Python中使用.append一样,如何使用PyLi

  • python基础(1):python介绍、python发展史2019-11-05 23:54:08

    1. python介绍 1.1 python是什么样的语言 编程语⾔主要从以下⼏个⻆度为进⾏分类,编译型和解释型、静态语⾔和动态语⾔、强类型定义语⾔和弱类型定义语⾔,我们先看编译型语⾔和解释型语⾔.稍后再说强类型和弱类型   编译和解释的区别是什么? 编译器是把源程序的每⼀条语句都编译成

  • cpython做什么来帮助检测对象周期(引用计数)?2019-11-05 21:07:37

    根据我对cpython的了解,似乎它确实引用了计数额外的内容以检测/释放指向彼此的对象(如果我错了,请纠正我).有人可以解释一些额外的东西吗?还可以保证*没有周期泄漏吗?如果还没有,那么对算法的研究是否被证明可以增加引用计数以使其永不泄漏*?是否会经常这样运行一次非参考计数跟踪gc? *

  • 占地面积最小的Python? CPython的?2019-11-02 19:57:32

    我是Python新手.经过一番搜索,我发现PyPy的性能不错,但要付出代价.它使用过多的内存. 我在Python中寻找的是具有尽可能小的占用空间的性能. CPython呢? (shootout.alioth.debian.org中的CPython基准已被删除.有人说CPython的占用空间很小,但是这有多小?)解决方法:我会推荐PyMite-http

  • Python:__ slots__及其描述符的用法2019-10-31 11:58:45

    class Foo(object): __slots__ = ('a',) class Bar(Foo): @property def a(self): return super(Bar, self).a super(Bar, Bar()).a = 4 如果我正在使用此代码,则无法使用: >>> super(Bar, Bar()).a = 4 Traceback (most recent call last): F

  • python-类型与弱引用的行为-无法理解2019-10-31 03:56:07

    我一直相信在Python解释器中,x .__ class__和type(x)的值是等效的.但是,如果我们执行以下操作(在python 2.7、3.3和PyPy 2.0b1中): >>> import weakref >>> x = set() >>> y = weakref.proxy(x) >>> x.__class__, isinstance(x, set), type(x) (<type 'set'&

  • 为什么CPython的hash(-1)!= -12019-10-30 21:58:39

    使int似乎是合理的.__hash__仅返回值.果然,这似乎是CPython实现它的方式: >>> hash(1) 1 >>> hash(2) 2 >>> hash(123456789) 123456789 >>> hash(-123456789) -123456789 好吧,这对于所有大多数整数x都成立吗? >>> [x for x in range(-10000, 10000) if hash(x) !=

  • python-Cython中从现有数组和变量创建新数组的最快方法是什么2019-10-25 15:57:38

    假设我有一个数组 from array import array myarr = array('l', [1, 2, 3]) 和一个变量: myvar = 4什么是创建新数组的最快方法: newarray = array('l', [1, 2, 3, 4]) 您可以假设所有元素均为“长”类型 我试图创建一个新的数组并使用array.append()不知道它是否最快.我当时在考

  • Python:os.mkdir的代码在哪里?2019-10-13 10:08:39

    我一直在浏览os模块的代码(为清楚起见,我正在查看文件/usr/lib/python2.7/os.py),并且我一直在尝试查找以下代码mkdir函数.据我所知,它来自“ posix”模块及其内置函数,与range或max相同: >>> import posix >>> posix.mkdir <built-in function mkdir> >>> max <built-in function

  • 如何使用__pycache__文件夹运行Python项目?2019-10-08 23:10:18

    我想使用Python编译(.pyc或__pycache__)运行Pythonic项目.为了在Python2中做到这一点,我没有任何问题. 以下是Python2项目中的简化示例: >项目树: test2 ├── main.py └── subfolder ├── __init__.py └── sub.py >编译: python -m compileall test2 >编译后的

  • python – 为什么代码使用中间变量比没有代码更快?2019-10-03 17:09:11

    我遇到了这种奇怪的行为并且无法解释它.这些是基准: py -3 -m timeit "tuple(range(2000)) == tuple(range(2000))" 10000 loops, best of 3: 97.7 usec per loop py -3 -m timeit "a = tuple(range(2000)); b = tuple(range(2000)); a==b" 10000 loops, best of 3: 70.7 usec

  • 如果PyPy快6.3倍,为什么我不应该使用PyPy而不是CPython?2019-09-25 20:58:00

    我听过很多关于PyPy项目的消息.他们声称它比their site的CPython翻译快6.3倍. 每当我们谈论像Python这样的动态语言时,速度是最重要的问题之一.为了解决这个问题,他们说PyPy的速度要快6.3倍. 第二个问题是并行性,臭名昭着的Global Interpreter Lock(GIL).为此,PyPy称它为can give G

  • 在python3.6中,集合的顺序是像dicts一样2019-09-19 01:58:07

    由于Python 3.6中dict实现的更改,现在默认排序.现在也设置保留顺序吗? 我找不到任何关于它的信息,但由于这两种数据结构在它们工作的方式非常相似,我认为可能就是这种情况. 我知道在所有情况下都没有订购dicts的承诺,但它们大部分时间都是如此.如Python文档中所述: The order-prese

  • 带有空格的Python字符串,最后没有空格和不变性2019-09-17 15:08:19

    我了解到在一些不可变类中,__ new__可能会返回一个现有实例 – 这就是int,str和tuple类型有时对小值进行的操作. 但为什么以下两个片段的行为不同? 最后有一个空格: >>> a = 'string ' >>> b = 'string ' >>> a is b False 没有空间: >>> c = 'string' >>> d = &#

  • Python字符串’in’运算符实现算法和时间复杂度2019-09-16 22:59:28

    我正在考虑in运算符如何实现 >>> s1 = 'abcdef' >>> s2 = 'bcd' >>> s2 in s1 True 在CPython中,哪个算法用于实现字符串匹配,以及时间复杂度是多少?有关于此的官方文件或维基吗?解决方法:它是Boyer-Moore和Horspool的组合. 您可以查看C代码here: Fast search/count implementatio

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有