OzoneAsai commited on
Commit
0e28850
ยท
verified ยท
1 Parent(s): 93d1180

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -15
app.py CHANGED
@@ -4,10 +4,12 @@ def main():
4
  st.title("้›†ๅˆๆ“ไฝœใ‚ขใƒ—ใƒช")
5
 
6
  # ใƒกใƒ‹ใƒฅใƒผใฎ้ธๆŠž
7
- option = st.sidebar.selectbox("ๆฉŸ่ƒฝใ‚’้ธๆŠžใ—ใฆใใ ใ•ใ„", ["้›†ๅˆใฎๆ“ไฝœ", "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—"])
8
 
9
  if option == "้›†ๅˆใฎๆ“ไฝœ":
10
  set_operations()
 
 
11
  elif option == "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—":
12
  complement_operation()
13
 
@@ -63,33 +65,54 @@ def set_operations():
63
  symmetric_difference = set1.symmetric_difference(set2)
64
  st.write(symmetric_difference)
65
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  def complement_operation():
67
  st.header("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—")
68
 
 
 
 
 
69
  with st.form(key='complement_operation_form'):
70
- # ๅ…จไฝ“้›†ๅˆใฎๆŒ‡ๅฎš
71
- universe = st.text_input("ๅ…จไฝ“้›†ๅˆ (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)", "1,2,3,4,5,6,7,8,9,10")
72
-
73
  # ใƒฆใƒผใ‚ถใƒผๅ…ฅๅŠ›
74
- initial_value = st.number_input("ๅˆๆœŸๅ€ค", value=0)
75
- step = st.number_input("ใ‚นใƒ†ใƒƒใƒ—", value=1)
76
- num_steps = st.number_input("ๅ›žๆ•ฐ", value=5, min_value=1)
77
 
78
  # ใƒ•ใ‚ฉใƒผใƒ ้€ไฟกใƒœใ‚ฟใƒณ
79
- submit_button = st.form_submit_button(label='ๅฎŸ่กŒ')
80
 
81
  if submit_button:
82
  # ๅ…ฅๅŠ›ใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’้›†ๅˆใซๅค‰ๆ›
83
- universe_set = parse_set(universe)
 
 
 
 
84
 
85
- if universe_set is not None:
86
  # ่ฃœ้›†ๅˆใฎ่จˆ็ฎ—
 
 
87
  st.subheader("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—็ตๆžœ")
88
- for i in range(num_steps):
89
- current_range = range(initial_value, initial_value + step)
90
- complement = universe_set.difference(current_range)
91
- st.write(f"่ฃœ้›†ๅˆ({initial_value} - {initial_value + step - 1})", complement)
92
- initial_value += step
93
 
94
  if __name__ == "__main__":
95
  main()
 
4
  st.title("้›†ๅˆๆ“ไฝœใ‚ขใƒ—ใƒช")
5
 
6
  # ใƒกใƒ‹ใƒฅใƒผใฎ้ธๆŠž
7
+ option = st.sidebar.selectbox("ๆฉŸ่ƒฝใ‚’้ธๆŠžใ—ใฆใใ ใ•ใ„", ["้›†ๅˆใฎๆ“ไฝœ", "ๅ…จไฝ“้›†ๅˆใฎ็”Ÿๆˆ", "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—"])
8
 
9
  if option == "้›†ๅˆใฎๆ“ไฝœ":
10
  set_operations()
11
+ elif option == "ๅ…จไฝ“้›†ๅˆใฎ็”Ÿๆˆ":
12
+ generate_universe()
13
  elif option == "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—":
14
  complement_operation()
15
 
 
65
  symmetric_difference = set1.symmetric_difference(set2)
66
  st.write(symmetric_difference)
67
 
68
+ def generate_universe():
69
+ st.header("ๅ…จไฝ“้›†ๅˆใฎ็”Ÿๆˆ")
70
+
71
+ with st.form(key='generate_universe_form'):
72
+ # ใƒฆใƒผใ‚ถใƒผๅ…ฅๅŠ›
73
+ initial_value = st.number_input("ๅˆๆœŸๅ€ค", value=0)
74
+ step = st.number_input("ใ‚นใƒ†ใƒƒใƒ—", value=1)
75
+ num_steps = st.number_input("ๅ›žๆ•ฐ", value=10, min_value=1)
76
+
77
+ # ใƒ•ใ‚ฉใƒผใƒ ้€ไฟกใƒœใ‚ฟใƒณ
78
+ submit_button = st.form_submit_button(label='็”Ÿๆˆ')
79
+
80
+ if submit_button:
81
+ # ๅ…จไฝ“้›†ๅˆใฎ็”Ÿๆˆ
82
+ universe_set = set(range(initial_value, initial_value + step * num_steps, step))
83
+
84
+ st.subheader("็”Ÿๆˆใ•ใ‚ŒใŸๅ…จไฝ“้›†ๅˆ")
85
+ st.write(universe_set)
86
+
87
+ st.session_state['universe_set'] = universe_set # ๅ…จไฝ“้›†ๅˆใ‚’ใ‚ปใƒƒใ‚ทใƒงใƒณ็Šถๆ…‹ใซไฟๅญ˜
88
+
89
  def complement_operation():
90
  st.header("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—")
91
 
92
+ if 'universe_set' not in st.session_state:
93
+ st.warning("ๅ…จไฝ“้›†ๅˆใŒ่จญๅฎšใ•ใ‚Œใฆใ„ใพใ›ใ‚“ใ€‚ๅ…ˆใซๅ…จไฝ“้›†ๅˆใ‚’็”Ÿๆˆใ—ใฆใใ ใ•ใ„ใ€‚")
94
+ return
95
+
96
  with st.form(key='complement_operation_form'):
 
 
 
97
  # ใƒฆใƒผใ‚ถใƒผๅ…ฅๅŠ›
98
+ target_set_input = st.text_input("ๅฏพ่ฑก้›†ๅˆ (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)", "1,2,3")
 
 
99
 
100
  # ใƒ•ใ‚ฉใƒผใƒ ้€ไฟกใƒœใ‚ฟใƒณ
101
+ submit_button = st.form_submit_button(label='่จˆ็ฎ—')
102
 
103
  if submit_button:
104
  # ๅ…ฅๅŠ›ใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’้›†ๅˆใซๅค‰ๆ›
105
+ target_set = parse_set(target_set_input)
106
+
107
+ if target_set is not None:
108
+ # ๅ…จไฝ“้›†ๅˆใ‚’ใ‚ปใƒƒใ‚ทใƒงใƒณ็Šถๆ…‹ใ‹ใ‚‰ๅ–ๅพ—
109
+ universe_set = st.session_state['universe_set']
110
 
 
111
  # ่ฃœ้›†ๅˆใฎ่จˆ็ฎ—
112
+ complement = universe_set.difference(target_set)
113
+
114
  st.subheader("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—็ตๆžœ")
115
+ st.write(complement)
 
 
 
 
116
 
117
  if __name__ == "__main__":
118
  main()