小编m4t*_*4tx的帖子

如何获得程序路径

可能重复:
如何在C中查找可执行文件的位置

我正在使用GTK +在C++中编写一个多平台应用程序,我遇到了问题.我必须得到程序路径.例如,当节目在/home/user/program(或C:\Users\user\program.exe)时,我有/home/user/(或C:\Users\user\).

可以以及如何做到这一点?

c++ gtk

4
推荐指数
2
解决办法
3万
查看次数

应用没有坐标的纹理

有没有办法在不指定纹理坐标的情况下将纹理应用于对象?

c++ opengl 3d textures

3
推荐指数
1
解决办法
200
查看次数

Java中浮点"1"和浮点"1f"之间有什么区别?

在Java中,在定义浮点变量之间是否有任何区别,例如,这个:1和这个:1f?JVM是否在我写入时在运行时进行任何强制转换1,或者可能会减慢我的应用程序的速度?

问候

java variables floating-point

2
推荐指数
1
解决办法
2万
查看次数

如何仅从ByteArrayOutputStream在JFrame中显示图像?

我有一个JPEG图像的ByteArrayOutputStream表示(虽然我可以使用GIF或PNG,如果这样可以更好地工作).我想在表单上显示它,例如在标签或图像对象中.我受限于这样一个事实:我无法将图像写入文件,我只能将其存储在内存中.

java image stream jframe bytearrayoutputstream

2
推荐指数
1
解决办法
488
查看次数

在Multimaps中获取值 - 番石榴

我用的是Guava库.

有没有办法在每个值中使用Multimap?

例如,Multimap中的值为1 = [stack],2 = [over,flow],3 = [com].如果Multimap名称为map且key为2,map.get("2")则会出现[over,flow].

我想只获得"流动".它可以吗?

java multimap guava

1
推荐指数
1
解决办法
1220
查看次数

在django-admin中预取m2m字段值

我有自己的Auth User模型,该模型继承自PermissionsMixin。当我访问django-admin页面以获取该模型的任何实例时,我都会得到很多数据库查询(因为我有很多权限)。问题出在这里,django / contrib / auth / models.py:

class Permission(models.Model):

[...]

def __str__(self):
    return "%s | %s | %s" % (
        six.text_type(self.content_type.app_label),
        six.text_type(self.content_type),
        six.text_type(self.name))
Run Code Online (Sandbox Code Playgroud)

每次在管理页面上显示权限时,都会查询其content_type。

问题是:我可以确保针对涉及我的Auth User模型的每个查询,特别是对于那些不是来自我的代码的查询(例如django admin)都将针对权限及其content_types运行prefetch_related吗?

django django-models django-admin

1
推荐指数
1
解决办法
198
查看次数

Python无法使用surrogateescape进行编码

我在Python(3.4)中使用Unicode代理编码存在问题:

>>> b'\xCC'.decode('utf-16_be', 'surrogateescape').encode('utf-16_be', 'surrogateescape')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'utf-16-be' codec can't encode character '\udccc' in position 0: surrogates not allowed
Run Code Online (Sandbox Code Playgroud)

如果我没记错的话,根据Python文档

'surrogateescape':在解码时,将字节替换为范围从U + DC80到U + DCFF的各个替代代码。当在编码数据时使用“ surrogateescape”错误处理程序时,该代码将被转换回相同的字节。

该代码应仅产生源序列(b'\xCC')。那么为什么要引发异常呢?

这可能与我的第二个问题有关:

在版本3.4中进行了更改:utf-16 *和utf-32 *编码器不再允许对替代代码点(U + D800–U + DFFF)进行编码。

(来自https://docs.python.org/3/library/codecs.html#standard-encodings

据我所知,没有代理对就不可能将某些代码点编码为UTF-16。那么,这背后的原因是什么呢?

python unicode utf-16 surrogate-pairs

1
推荐指数
1
解决办法
4725
查看次数

为什么 sys.argv 在 Python 退出时设置为 None?

请考虑以下脚本:

import sys


class A:
    def __init__(self):
        print('Constructing A')
        print(sys.argv)
        print(sys.meta_path)
        print(sys.float_info)

    def __del__(self):
        print('Destructing A')
        print(sys.argv)
        print(sys.meta_path)
        print(sys.float_info)


x = A()
Run Code Online (Sandbox Code Playgroud)

我期望从运行这个代码将打印相同sys.argv__init__()__del__()阶级的A。但是,输出与预期不同:

Constructing A
['test.py']
[<class '_frozen_importlib.BuiltinImporter'>, ...]
sys.float_info(max=1.7976931348623157e+308, ...)

Destructing A
None
None
sys.float_info(max=1.7976931348623157e+308, ...)
Run Code Online (Sandbox Code Playgroud)

我的问题:为什么会这样?它是一个实现细节CPython的设置sys.argv,以None在关机,或者是它的文档中描述的地方?为什么 Python(显式地或通过 GC)首先从sys(likeargvmeta_path) 中删除一些对象,同时保留其他对象 (like float_info)?

我在 GNU/Linux 上使用 CPython 3.8.5。

python cpython internals

1
推荐指数
1
解决办法
53
查看次数