Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
cpython
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
cpython
Commits
ffd842e1
Kaydet (Commit)
ffd842e1
authored
Kas 10, 2014
tarafından
Raymond Hettinger
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Issue #22824: Updated reprlib output format for sets to use set literals.
üst
223bc2fe
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
36 additions
and
21 deletions
+36
-21
stdlib2.rst
Doc/tutorial/stdlib2.rst
+1
-1
reprlib.py
Lib/reprlib.py
+6
-2
test_reprlib.py
Lib/test/test_reprlib.py
+26
-18
NEWS
Misc/NEWS
+3
-0
No files found.
Doc/tutorial/stdlib2.rst
Dosyayı görüntüle @
ffd842e1
...
@@ -18,7 +18,7 @@ abbreviated displays of large or deeply nested containers::
...
@@ -18,7 +18,7 @@ abbreviated displays of large or deeply nested containers::
>>> import reprlib
>>> import reprlib
>>> reprlib.repr(set('supercalifragilisticexpialidocious'))
>>> reprlib.repr(set('supercalifragilisticexpialidocious'))
"
set(['a', 'c', 'd', 'e', 'f', 'g', ...])
"
"
{'a', 'c', 'd', 'e', 'f', 'g', ...}
"
The :mod:`pprint` module offers more sophisticated control over printing both
The :mod:`pprint` module offers more sophisticated control over printing both
built-in and user defined objects in a way that is readable by the interpreter.
built-in and user defined objects in a way that is readable by the interpreter.
...
...
Lib/reprlib.py
Dosyayı görüntüle @
ffd842e1
...
@@ -87,12 +87,16 @@ class Repr:
...
@@ -87,12 +87,16 @@ class Repr:
return
self
.
_repr_iterable
(
x
,
level
,
header
,
'])'
,
self
.
maxarray
)
return
self
.
_repr_iterable
(
x
,
level
,
header
,
'])'
,
self
.
maxarray
)
def
repr_set
(
self
,
x
,
level
):
def
repr_set
(
self
,
x
,
level
):
if
not
x
:
return
'set()'
x
=
_possibly_sorted
(
x
)
x
=
_possibly_sorted
(
x
)
return
self
.
_repr_iterable
(
x
,
level
,
'
set(['
,
'])
'
,
self
.
maxset
)
return
self
.
_repr_iterable
(
x
,
level
,
'
{'
,
'}
'
,
self
.
maxset
)
def
repr_frozenset
(
self
,
x
,
level
):
def
repr_frozenset
(
self
,
x
,
level
):
if
not
x
:
return
'frozenset()'
x
=
_possibly_sorted
(
x
)
x
=
_possibly_sorted
(
x
)
return
self
.
_repr_iterable
(
x
,
level
,
'frozenset(
['
,
']
)'
,
return
self
.
_repr_iterable
(
x
,
level
,
'frozenset(
{'
,
'}
)'
,
self
.
maxfrozenset
)
self
.
maxfrozenset
)
def
repr_deque
(
self
,
x
,
level
):
def
repr_deque
(
self
,
x
,
level
):
...
...
Lib/test/test_reprlib.py
Dosyayı görüntüle @
ffd842e1
...
@@ -10,7 +10,7 @@ import importlib
...
@@ -10,7 +10,7 @@ import importlib
import
importlib.util
import
importlib.util
import
unittest
import
unittest
from
test.support
import
run_unittest
,
create_empty_file
,
verbose
from
test.support
import
create_empty_file
,
verbose
from
reprlib
import
repr
as
r
# Don't shadow builtin repr
from
reprlib
import
repr
as
r
# Don't shadow builtin repr
from
reprlib
import
Repr
from
reprlib
import
Repr
from
reprlib
import
recursive_repr
from
reprlib
import
recursive_repr
...
@@ -70,18 +70,18 @@ class ReprTests(unittest.TestCase):
...
@@ -70,18 +70,18 @@ class ReprTests(unittest.TestCase):
eq
(
r
([
1
,
2
,
3
,
4
,
5
,
6
,
7
]),
"[1, 2, 3, 4, 5, 6, ...]"
)
eq
(
r
([
1
,
2
,
3
,
4
,
5
,
6
,
7
]),
"[1, 2, 3, 4, 5, 6, ...]"
)
# Sets give up after 6 as well
# Sets give up after 6 as well
eq
(
r
(
set
([])),
"set(
[]
)"
)
eq
(
r
(
set
([])),
"set()"
)
eq
(
r
(
set
([
1
])),
"
set([1])
"
)
eq
(
r
(
set
([
1
])),
"
{1}
"
)
eq
(
r
(
set
([
1
,
2
,
3
])),
"
set([1, 2, 3])
"
)
eq
(
r
(
set
([
1
,
2
,
3
])),
"
{1, 2, 3}
"
)
eq
(
r
(
set
([
1
,
2
,
3
,
4
,
5
,
6
])),
"
set([1, 2, 3, 4, 5, 6])
"
)
eq
(
r
(
set
([
1
,
2
,
3
,
4
,
5
,
6
])),
"
{1, 2, 3, 4, 5, 6}
"
)
eq
(
r
(
set
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"
set([1, 2, 3, 4, 5, 6, ...])
"
)
eq
(
r
(
set
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"
{1, 2, 3, 4, 5, 6, ...}
"
)
# Frozensets give up after 6 as well
# Frozensets give up after 6 as well
eq
(
r
(
frozenset
([])),
"frozenset(
[]
)"
)
eq
(
r
(
frozenset
([])),
"frozenset()"
)
eq
(
r
(
frozenset
([
1
])),
"frozenset(
[1]
)"
)
eq
(
r
(
frozenset
([
1
])),
"frozenset(
{1}
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
])),
"frozenset(
[1, 2, 3]
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
])),
"frozenset(
{1, 2, 3}
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
,
4
,
5
,
6
])),
"frozenset(
[1, 2, 3, 4, 5, 6]
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
,
4
,
5
,
6
])),
"frozenset(
{1, 2, 3, 4, 5, 6}
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"frozenset(
[1, 2, 3, 4, 5, 6, ...]
)"
)
eq
(
r
(
frozenset
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"frozenset(
{1, 2, 3, 4, 5, 6, ...}
)"
)
# collections.deque after 6
# collections.deque after 6
eq
(
r
(
deque
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"deque([1, 2, 3, 4, 5, 6, ...])"
)
eq
(
r
(
deque
([
1
,
2
,
3
,
4
,
5
,
6
,
7
])),
"deque([1, 2, 3, 4, 5, 6, ...])"
)
...
@@ -103,6 +103,20 @@ class ReprTests(unittest.TestCase):
...
@@ -103,6 +103,20 @@ class ReprTests(unittest.TestCase):
eq
(
r
(
array
(
'i'
,
[
1
,
2
,
3
,
4
,
5
,
6
])),
eq
(
r
(
array
(
'i'
,
[
1
,
2
,
3
,
4
,
5
,
6
])),
"array('i', [1, 2, 3, 4, 5, ...])"
)
"array('i', [1, 2, 3, 4, 5, ...])"
)
def
test_set_literal
(
self
):
eq
=
self
.
assertEqual
eq
(
r
({
1
}),
"{1}"
)
eq
(
r
({
1
,
2
,
3
}),
"{1, 2, 3}"
)
eq
(
r
({
1
,
2
,
3
,
4
,
5
,
6
}),
"{1, 2, 3, 4, 5, 6}"
)
eq
(
r
({
1
,
2
,
3
,
4
,
5
,
6
,
7
}),
"{1, 2, 3, 4, 5, 6, ...}"
)
def
test_frozenset
(
self
):
eq
=
self
.
assertEqual
eq
(
r
(
frozenset
({
1
})),
"frozenset({1})"
)
eq
(
r
(
frozenset
({
1
,
2
,
3
})),
"frozenset({1, 2, 3})"
)
eq
(
r
(
frozenset
({
1
,
2
,
3
,
4
,
5
,
6
})),
"frozenset({1, 2, 3, 4, 5, 6})"
)
eq
(
r
(
frozenset
({
1
,
2
,
3
,
4
,
5
,
6
,
7
})),
"frozenset({1, 2, 3, 4, 5, 6, ...})"
)
def
test_numbers
(
self
):
def
test_numbers
(
self
):
eq
=
self
.
assertEqual
eq
=
self
.
assertEqual
eq
(
r
(
123
),
repr
(
123
))
eq
(
r
(
123
),
repr
(
123
))
...
@@ -373,11 +387,5 @@ class TestRecursiveRepr(unittest.TestCase):
...
@@ -373,11 +387,5 @@ class TestRecursiveRepr(unittest.TestCase):
m
.
append
(
m
)
m
.
append
(
m
)
self
.
assertEqual
(
repr
(
m
),
'<a, b, c, d, e, +++, x, +++>'
)
self
.
assertEqual
(
repr
(
m
),
'<a, b, c, d, e, +++, x, +++>'
)
def
test_main
():
run_unittest
(
ReprTests
)
run_unittest
(
LongReprTest
)
run_unittest
(
TestRecursiveRepr
)
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
test_
main
()
unittest
.
main
()
Misc/NEWS
Dosyayı görüntüle @
ffd842e1
...
@@ -186,6 +186,9 @@ Library
...
@@ -186,6 +186,9 @@ Library
-
Issues
#
814253
,
#
9179
:
Group
references
and
conditional
group
references
now
-
Issues
#
814253
,
#
9179
:
Group
references
and
conditional
group
references
now
work
in
lookbehind
assertions
in
regular
expressions
.
work
in
lookbehind
assertions
in
regular
expressions
.
-
Issue
#
22824
:
Updated
reprlib
output
format
for
sets
to
use
set
literals
.
Patch
contributed
by
Berker
Peksag
.
-
Issue
#
22406
:
Fixed
the
uu_codec
codec
incorrectly
ported
to
3.
x
.
-
Issue
#
22406
:
Fixed
the
uu_codec
codec
incorrectly
ported
to
3.
x
.
Based
on
patch
by
Martin
Panter
.
Based
on
patch
by
Martin
Panter
.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment