streamlit

Форк
0
/
st_date_input.py 
91 строка · 2.7 Кб
1
# Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. (2022-2024)
2
#
3
# Licensed under the Apache License, Version 2.0 (the "License");
4
# you may not use this file except in compliance with the License.
5
# You may obtain a copy of the License at
6
#
7
#     http://www.apache.org/licenses/LICENSE-2.0
8
#
9
# Unless required by applicable law or agreed to in writing, software
10
# distributed under the License is distributed on an "AS IS" BASIS,
11
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
# See the License for the specific language governing permissions and
13
# limitations under the License.
14

15
from datetime import date, datetime
16

17
import streamlit as st
18
from streamlit import runtime
19

20
v1 = st.date_input("Single date", date(1970, 1, 1), min_value=date(1970, 1, 1))
21
st.write("Value 1:", v1)
22

23
v2 = st.date_input("Single datetime", datetime(2019, 7, 6, 21, 15), help="Help text")
24
st.write("Value 2:", v2)
25

26
v3 = st.date_input("Range, no date", [])
27
st.write("Value 3:", v3)
28

29
v4 = st.date_input("Range, one date", [date(2019, 7, 6)])
30
st.write("Value 4:", v4)
31

32
v5 = st.date_input("Range, two dates", [date(2019, 7, 6), date(2019, 7, 8)])
33
st.write("Value 5:", v5)
34

35
v6 = st.date_input("Disabled, no date", [], disabled=True)
36
st.write("Value 6:", v6)
37

38
v7 = st.date_input(
39
    "Label hidden", datetime(2019, 7, 6, 21, 15), label_visibility="hidden"
40
)
41
st.write("Value 7:", v7)
42

43
v8 = st.date_input(
44
    "Label collapsed", datetime(2019, 7, 6, 21, 15), label_visibility="collapsed"
45
)
46
st.write("Value 8:", v8)
47

48
v9 = st.date_input("Single date with format", date(1970, 1, 1), format="MM-DD-YYYY")
49
st.write("Value 9:", v9)
50

51
v10 = st.date_input(
52
    "Range, two dates with format",
53
    [date(2019, 7, 6), date(2019, 7, 8)],
54
    format="MM/DD/YYYY",
55
)
56
st.write("Value 10:", v10)
57

58
v11 = st.date_input("Range, no date with format", [], format="DD.MM.YYYY")
59
st.write("Value 11:", v11)
60

61

62
if runtime.exists():
63

64
    def on_change():
65
        st.session_state.date_input_changed = True
66
        st.text("Date input changed callback")
67

68
    st.date_input(
69
        "Single date with callback",
70
        date(1970, 1, 1),
71
        min_value=date(1970, 1, 1),
72
        key="date_input_12",
73
        on_change=on_change,
74
    )
75
    st.write("Value 12:", st.session_state.date_input_12)
76
    st.write("Date Input Changed:", st.session_state.get("date_input_changed") is True)
77
    # Reset to False:
78
    st.session_state.date_input_changed = False
79

80
v13 = st.date_input("Empty value", value=None)
81
st.write("Value 13:", v13)
82

83
if "date_input_14" not in st.session_state:
84
    st.session_state["date_input_14"] = date(1970, 2, 3)
85

86
v14 = st.date_input(
87
    "Value from state",
88
    value=None,
89
    key="date_input_14",
90
)
91
st.write("Value 14:", v14)
92

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.