`Union[str, int]` is treated as `dynamic`
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện đoạn mã Python được cung cấp bằng trình biên dịch tĩnh và kiểm tra cách các chú thích Union[int, str] được xử lý trước reveal_type(x). So sánh đường đi đó với ví dụ về luồng điều khiển đã cho, trong đó kiểu cục bộ là Union[str, int]. Hoàn thành khi biến được chú thích được báo cáo là Union[int, str] thay vì dynamic.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
What version of Static Python are you using?
6862bbd
2021-10-03
What program did you run?
from typing import Union
x: Union[int, str] = 1
reveal_type(x)
What happened?
The type of x is dynamic
compiler.static.errors.TypedSyntaxError:
reveal_type(x): 'dynamic',
'x' has declared type 'dynamic' and
local type 'Literal[1]'
What should have happened?
We expected the type of x to be Union[int, str] because union types are supported:
x: Any = 1
if True:
x = "hello"
else:
x = 42
reveal_type(x)
# compiler.static.errors.TypedSyntaxError:
# reveal_type(x): 'dynamic',
# 'x' has declared type 'dynamic' and
# local type 'Union[str, int]'
- Ngôn ngữ chính
- Python
- Star
- 3.8k
- Fork
- 139
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của facebookincubator/MetaPython
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
facebookincubator/MetaPython#147 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
facebookincubator/MetaPython#146 · 2 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
facebookincubator/MetaPython#145 · 4 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 30/100
facebookincubator/MetaPython#144 · 1 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 20/100
facebookincubator/MetaPython#129 · 2 bình luận ·
Tất cả issue của facebookincubator/MetaPython
Issue tương tự
-
documentation help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
simonw/sqlite-utils#872 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100