Questions tagged «python-3.x»

对于特定于该语言版本3+的有关Python编程的问题。如果您的问题不是特定于版本的,则使用更通用的[python]标记。将[python-2.x]标记用于Python 2问题。

7
如何在Python 3中使用raw_input
import sys print(sys.platform) print(2**100) raw_input() 我正在使用Python 3.1,无法raw_input“冻结” dos弹出窗口。我正在阅读的书是针对Python 2.5的,而我正在使用Python 3.1 我应该怎么做才能解决这个问题?
553 python  python-3.x 


8
UnicodeDecodeError:'charmap'编解码器无法解码位置Y的字节X:字符映射到<undefined>
我正在尝试让Python 3程序对充满信息的文本文件进行一些操作。但是,当尝试读取文件时,出现以下错误: Traceback (most recent call last): File "SCRIPT LOCATION", line NUMBER, in &lt;module&gt; `text = file.read()` File "C:\Python31\lib\encodings\cp1252.py", line 23, in decode `return codecs.charmap_decode(input,self.errors,decoding_table)[0]` UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2907500: character maps to `&lt;undefined&gt;`

9
获取map()以在Python 3.x中返回列表
我正在尝试将列表映射为十六进制,然后在其他地方使用该列表。在python 2.6中,这很简单: 答: Python 2.6: &gt;&gt;&gt; map(chr, [66, 53, 0, 94]) ['B', '5', '\x00', '^'] 但是,在Python 3.1中,以上代码返回一个map对象。 B: Python 3.1: &gt;&gt;&gt; map(chr, [66, 53, 0, 94]) &lt;map object at 0x00AF5570&gt; 如何在Python 3.x上检索映射列表(如上面的A所示)? 另外,还有更好的方法吗?我的初始列表对象大约有45个项目,并且id喜欢将它们转换为十六进制。

8
移除Python unicode字符串中的重音符号的最佳方法是什么?
我在Python中有一个Unicode字符串,我想删除所有的重音符号(变音符号)。 我在网上发现了一种用Java实现此目的的优雅方法: 将Unicode字符串转换为长规范化格式(带有单独的字母和变音符号) 删除Unicode类型为“变音符号”的所有字符。 我是否需要安装pyICU之类的库,还是仅使用python标准库就可以?那python 3呢? 重要说明:我想避免使用带有重音符号到非重音符号的显式映射的代码。


7
->在Python函数定义中是什么意思?
我最近在查看Python 3.3语法规范时发现了一些有趣的东西: funcdef: 'def' NAME parameters ['-&gt;' test] ':' suite Python 2中没有可选的“箭头”块,我在Python 3中找不到有关其含义的任何信息。事实证明这是正确的Python,并且已被解释器接受: def f(x) -&gt; 123: return x 我认为这可能是某种前提语法,但是: 我无法x在此处进行测试,因为它仍未定义, 无论我在箭头后面加什么(例如2 &lt; 1),它都不会影响功能行为。 习惯此语法的任何人都可以解释吗?

8
Python3中的StringIO
我正在使用Python 3.2.1,但无法导入StringIO模块。我使用 io.StringIO和它的作品,但我不能使用它numpy的genfromtxt是这样的: x="1 3\n 4.5 8" numpy.genfromtxt(io.StringIO(x)) 我收到以下错误: TypeError: Can't convert 'bytes' object to str implicitly 当我写的import StringIO时候说 ImportError: No module named 'StringIO'
473 python  python-3.x  io 


4
是否在Python 3.6+中订购了字典?
与以前的版本不同,字典在Python 3.6中排序(至少在CPython实现下)。这似乎是一个重大更改,但只是文档中的一小段。它被描述为CPython实现细节而不是语言功能,但这也意味着将来可能会成为标准。 在保留元素顺序的同时,新的字典实现如何比旧的实现更好? 以下是文档中的文字: dict()现在使用PyPy率先提出的“紧凑”表示形式。与Python 3.5相比,新dict()的内存使用量减少了20%至25%。PEP 468(在函数中保留** kwarg的顺序。)由此实现。此新实现的顺序保留方面被认为是实现细节,因此不应依赖(将来可能会更改,但是希望在更改语言规范之前,先在几个发行版中使用该新dict实现该语言,为所有当前和将来的Python实现强制要求保留顺序的语义;这还有助于保留与仍旧有效的随机迭代顺序的旧版本语言(例如Python 3.5)的向后兼容性。(由INADA Naoki在发行27350。最初由Raymond Hettinger提出的想法。) 2017年12月更新:Python 3.7 保证dict保留插入顺序

6
错误:“'dict'对象没有属性'iteritems'”
我正在尝试使用NetworkX读取Shapefile并使用该函数write_shp()生成将包含节点和边的Shapefile,但是当我尝试运行代码时,出现以下错误: Traceback (most recent call last): File "C:/Users/Felipe/PycharmProjects/untitled/asdf.py", line 4, in &lt;module&gt; nx.write_shp(redVial, "shapefiles") File "C:\Python34\lib\site-packages\networkx\readwrite\nx_shp.py", line 192, in write_shp for key, data in e[2].iteritems(): AttributeError: 'dict' object has no attribute 'iteritems' 我正在使用Python 3.4,并通过pip install安装了NetworkX。 在发生此错误之前,它已经给我另一个提示“ xrange不存在”或类似名称,因此我进行了查找,然后将其更改xrange为rangenx_shp.py文件,似乎可以解决该问题。 根据我的阅读,它可能与Python版本(Python2 vs Python3)有关。


4
如何指定方法的返回类型与类本身相同?
我在python 3中有以下代码: class Position: def __init__(self, x: int, y: int): self.x = x self.y = y def __add__(self, other: Position) -&gt; Position: return Position(self.x + other.x, self.y + other.y) 但是我的编辑器(PyCharm)说,参考位置无法解析(在__add__方法中)。我应该如何指定期望返回类型为type Position? 编辑:我认为这实际上是一个PyCharm问题。它实际上在警告和代码完成中使用该信息 但如果我错了,请纠正我,并需要使用其他语法。



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.