├── .DS_Store ├── .devcontainer └── devcontainer.json ├── .gitignore ├── LICENSE ├── README.md ├── autorefresh └── README.md ├── requirements.txt ├── session_state_manager ├── 0why_you_need_session_state.py ├── 1session_state_basic.py ├── 2sessionStateWithWidgets.py ├── 3sessionStateWithCallBack.py ├── README.md ├── images │ └── pic1.png └── session_state概念.jam ├── 安裝和執行 └── README.md ├── 實際案例 ├── .DS_Store ├── exchange_rate │ ├── README.md │ ├── images │ │ └── pic1.png │ ├── main.py │ └── rates_data │ │ ├── 20230804.csv │ │ ├── 20230805.csv │ │ └── 20230811.csv ├── finance │ ├── README.md │ ├── codeSearch.csv │ ├── images │ │ └── pic1.png │ ├── lesson1.ipynb │ ├── lesson2.ipynb │ ├── lesson3.ipynb │ ├── lesson4.ipynb │ └── main.py ├── student_scores │ ├── README.md │ ├── images │ │ └── pic1.png │ ├── lesson1.ipynb │ └── main.py ├── taiwan_weather │ ├── README.md │ ├── images │ │ └── pic1.png │ ├── main.py │ └── weather_data │ │ ├── 20230807.csv │ │ └── 20230811.csv ├── tensorflow1 │ ├── README.md │ └── images │ │ └── pic1.png ├── tensorflow2 │ ├── README.md │ └── images │ │ └── pic1.png ├── tensorflow3 │ ├── MNIST_fasion.tflite │ ├── README.md │ ├── create_model.py │ └── images │ │ └── pic1.png └── tensorflow4 │ ├── MNIST_fasion.tflite │ ├── README.md │ ├── create_model.py │ └── images │ └── pic1.png ├── 快速入門 ├── README.md ├── images │ ├── pic1.png │ ├── pic10.png │ ├── pic11.png │ ├── pic12.png │ ├── pic2.png │ ├── pic3.png │ ├── pic4.png │ ├── pic5.png │ ├── pic6.png │ ├── pic7.png │ ├── pic8.png │ └── pic9.png ├── lesson1.py ├── lesson10.py ├── lesson11.py ├── lesson2.py ├── lesson3.py ├── lesson4.py ├── lesson5.py ├── lesson6.py ├── lesson7.py ├── lesson8.py └── lesson9.py ├── 模擬環境變數 └── README.md └── 版面 ├── .DS_Store ├── README.md ├── images ├── pic10.png ├── pic11.png ├── pic12.png ├── pic13.png └── pic9.png ├── lesson10.py ├── lesson11.py ├── lesson12.py ├── lesson13.py ├── lesson14.py └── lesson9.py /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/.DS_Store -------------------------------------------------------------------------------- /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- 1 | // For format details, see https://aka.ms/devcontainer.json. For config options, see the 2 | // README at: https://github.com/devcontainers/templates/tree/main/src/python 3 | { 4 | "name": "Python 3", 5 | // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile 6 | "image": "mcr.microsoft.com/devcontainers/python:1-3.10-bullseye", 7 | "features": { 8 | "ghcr.io/devcontainers/features/git-lfs:1": {}, 9 | "ghcr.io/devcontainers-contrib/features/gh-cli:1": {}, 10 | "ghcr.io/wxw-matt/devcontainer-features/command_runner:0": {}, 11 | "ghcr.io/wxw-matt/devcontainer-features/script_runner:0": {} 12 | }, 13 | "runArgs": ["--name", "python_streamlit"], 14 | 15 | 16 | 17 | // Features to add to the dev container. More info: https://containers.dev/features. 18 | // "features": {}, 19 | 20 | // Use 'forwardPorts' to make a list of ports inside the container available locally. 21 | "forwardPorts": [8501], 22 | 23 | // Use 'postCreateCommand' to run commands after the container is created. 24 | "postCreateCommand": 25 | "pip install --upgrade pip && pip3 install --user -r requirements.txt && sudo apt-get update -y && sudo apt-get install -y fonts-wqy-zenhei", 26 | "customizations": { 27 | "vscode": { 28 | "extensions": [ 29 | "ms-toolsai.jupyter" 30 | ] 31 | } 32 | } 33 | 34 | // Configure tool-specific properties. 35 | // "customizations": {}, 36 | 37 | // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. 38 | // "remoteUser": "root" 39 | } 40 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | share/python-wheels/ 24 | *.egg-info/ 25 | .installed.cfg 26 | *.egg 27 | MANIFEST 28 | 29 | # PyInstaller 30 | # Usually these files are written by a python script from a template 31 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 32 | *.manifest 33 | *.spec 34 | 35 | # Installer logs 36 | pip-log.txt 37 | pip-delete-this-directory.txt 38 | 39 | # Unit test / coverage reports 40 | htmlcov/ 41 | .tox/ 42 | .nox/ 43 | .coverage 44 | .coverage.* 45 | .cache 46 | nosetests.xml 47 | coverage.xml 48 | *.cover 49 | *.py,cover 50 | .hypothesis/ 51 | .pytest_cache/ 52 | cover/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | .pybuilder/ 76 | target/ 77 | 78 | # Jupyter Notebook 79 | .ipynb_checkpoints 80 | 81 | # IPython 82 | profile_default/ 83 | ipython_config.py 84 | 85 | # pyenv 86 | # For a library or package, you might want to ignore these files since the code is 87 | # intended to run in multiple environments; otherwise, check them in: 88 | # .python-version 89 | 90 | # pipenv 91 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 92 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 93 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 94 | # install all needed dependencies. 95 | #Pipfile.lock 96 | 97 | # poetry 98 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 99 | # This is especially recommended for binary packages to ensure reproducibility, and is more 100 | # commonly ignored for libraries. 101 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 102 | #poetry.lock 103 | 104 | # pdm 105 | # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. 106 | #pdm.lock 107 | # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it 108 | # in version control. 109 | # https://pdm.fming.dev/#use-with-ide 110 | .pdm.toml 111 | 112 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm 113 | __pypackages__/ 114 | 115 | # Celery stuff 116 | celerybeat-schedule 117 | celerybeat.pid 118 | 119 | # SageMath parsed files 120 | *.sage.py 121 | 122 | # Environments 123 | .env 124 | .venv 125 | env/ 126 | venv/ 127 | ENV/ 128 | env.bak/ 129 | venv.bak/ 130 | 131 | # Spyder project settings 132 | .spyderproject 133 | .spyproject 134 | 135 | # Rope project settings 136 | .ropeproject 137 | 138 | # mkdocs documentation 139 | /site 140 | 141 | # mypy 142 | .mypy_cache/ 143 | .dmypy.json 144 | dmypy.json 145 | 146 | # Pyre type checker 147 | .pyre/ 148 | 149 | # pytype static type analyzer 150 | .pytype/ 151 | 152 | # Cython debug symbols 153 | cython_debug/ 154 | 155 | # PyCharm 156 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 157 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 158 | # and can be added to the global gitignore or merged into this file. For a more nuclear 159 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 160 | #.idea/ 161 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # python Streamlit 2 | ## 重要觀念 3 | 1. streamlit建立的實體,只有layout元件和container元件傳回的是參考 4 | 2. 由於第一個觀念,所以streamlit一開始便需要layout 5 | 3. 大部份元件(除了layout和container元件),建立後傳出來的並非元件的參考 6 | 4. 和使用者互動,會讓所有頁面從上而下重新讀取 7 | 5. 由於重新讀取,所有變數資料會消失,要保留資料必需使用st.session來保留資料 8 | 6. input元件已經有callback的事件方法,如果使用input元件的callback屬性,元件必需要加入key屬性,callback function透過key屬性來存取使st.session_state.key 9 | 10 | ## [安裝](./安裝和執行) 11 | ## [快速入門](./快速入門/) 12 | ## [版面](./版面) 13 | ## [session state和callback管理](./session_state_manager) 14 | ## [Auto-Refresh](./autorefresh) 15 | ## [模擬環境變數](./模擬環境變數) 16 | ## 實際案例 17 | - [各種類型圖表顯示](./實際案例/student_scores/) 18 | - [台幣匯率換算](./實際案例/exchange_rate/) 19 | - [台灣天氣預測](./實際案例/taiwan_weather/) 20 | - [股票資訊](./實際案例/finance/) 21 | --- 22 | **機器學習** 23 | - [(y=2x-1)線性迴歸](./實際案例/tensorflow1/) 24 | - [Fashion MNIST-5x5-Grid](./實際案例/tensorflow3/) 25 | - [Fashion MNIST-5x5-Grid進階版](./實際案例/tensorflow4/) 26 | - 使用延伸套件`streamlit-clickable-images` 27 | ## [官方專業Demo](https://github.com/streamlit) -------------------------------------------------------------------------------- /autorefresh/README.md: -------------------------------------------------------------------------------- 1 | ### 自動重新載入頁面 2 | - 使用streamlit擴充套件 3 | 4 | ``` 5 | $ pip install streamlit-autorefreshaut 6 | ``` 7 | 8 |  -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | streamlit 2 | requests 3 | pandas 4 | numpy 5 | matplotlib 6 | plotly==5.15.0 7 | nbformat 8 | yfinance 9 | ffn 10 | streamlit-autorefresh 11 | python-dotenv -------------------------------------------------------------------------------- /session_state_manager/0why_you_need_session_state.py: -------------------------------------------------------------------------------- 1 | #下面是錯誤的寫法 2 | #每按一次按鈕,一樣是顯示1 3 | #要了解原因必需要學會session_state 4 | import streamlit as st 5 | 6 | st.title('Counter Example') 7 | count = 0 8 | 9 | increment = st.button('Increment') 10 | if increment: 11 | count += 1 12 | 13 | st.write('Count = ', count) -------------------------------------------------------------------------------- /session_state_manager/1session_state_basic.py: -------------------------------------------------------------------------------- 1 | import streamlit as st 2 | 3 | st.title("Session State Basics") 4 | 5 | "st.session_state object:", st.session_state 6 | 7 | if 'a_counter' not in st.session_state: #初始化 8 | st.session_state['a_counter'] = 0 #只執行一次 9 | 10 | if "boolean" not in st.session_state: #初始化 11 | st.session_state.boolean = False #只執行一次 12 | 13 | st.write(st.session_state) 14 | 15 | st.write("a_counter is:", st.session_state["a_counter"]) 16 | st.write("boolean is:",st.session_state.boolean) 17 | 18 | for the_key in st.session_state.keys(): #取出所有session_state的key 19 | st.write(the_key) 20 | 21 | for the_value in st.session_state.values():#取出所有session_state的value 22 | st.write(the_value) 23 | 24 | for item in st.session_state.items():#取出所有session_state的key,value 25 | item 26 | 27 | button = st.button("Update State",key="button") #button第一次始始化,button初設定為false,按一下,就更改為true,未來都是true了 28 | 29 | "按button之前",st.session_state 30 | 31 | 32 | if button: 33 | st.session_state['a_counter'] += 1 34 | st.session_state.boolean = not st.session_state.boolean 35 | "按完按鈕後",st.session_state 36 | 37 | 38 | #for key in st.session_state.keys(): #清空所有的session_state 39 | # del st.session_state[key] 40 | # 41 | #st.session_state 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /session_state_manager/2sessionStateWithWidgets.py: -------------------------------------------------------------------------------- 1 | import streamlit as st 2 | 3 | st.title("Session State Basics") 4 | 5 | "st.session_state object:", st.session_state 6 | 7 | ## works with all widgets 8 | number = st.slider("A number",1, 10, key="slider") #重要,session_state沒有就初始化,有就更新 9 | 10 | st.write(st.session_state) 11 | 12 | col1, buff, col2 = st.columns([1,0.5,3]) #columns已經在此建立container 13 | 14 | #---------這一段最後寫------------ 15 | #-----下面的print()是驗証,當使用者和input widge互動時,程式會由上而下重新執行一次 16 | print("我的下面是button") 17 | next = st.button("Next optin") #button第一次始始化,next初設定為false,按一下,就更改為true 18 | print(next) 19 | 20 | if next: 21 | if st.session_state["radio_option"] == 'a': 22 | st.session_state.radio_option = 'b' 23 | elif st.session_state["radio_option"] == 'b': 24 | st.session_state.radio_option = 'c' 25 | else: 26 | st.session_state.radio_option = 'a' 27 | #---------這一段最後寫------------ 28 | 29 | option_names = ["a", "b", "c"] 30 | option = col1.radio("請選擇1個",option_names,key="radio_option") 31 | st.session_state 32 | 33 | if option == 'a': 34 | col2.write("您選擇的是'a' :smile:") 35 | elif option == 'b': 36 | col2.write("您選擇的是'b' :heart:") 37 | else: 38 | col2.write("您選擇是'c' :rocket:") 39 | -------------------------------------------------------------------------------- /session_state_manager/3sessionStateWithCallBack.py: -------------------------------------------------------------------------------- 1 | import streamlit as st 2 | 3 | st.title("Session State Basic") 4 | "st.session_state object:", st.session_state 5 | 6 | def lbs_to_kg(): 7 | st.session_state.kg = st.session_state.lbs/2.2046 8 | 9 | def kg_to_lbs(): 10 | st.session_state.lbs = st.session_state.kg * 2.2046 11 | 12 | col1, buff, col2 = st.columns([2,1,2]) 13 | with col1: 14 | st.number_input("Pounds:",key='lbs', on_change=lbs_to_kg) 15 | 16 | with col2: 17 | st.number_input("Kilograms:", key="kg", on_change=kg_to_lbs) -------------------------------------------------------------------------------- /session_state_manager/README.md: -------------------------------------------------------------------------------- 1 | ## session_state管理和callback function 2 | - #0.84版後,callback的觀念已經加入 3 | 4 | ### 什麼是session state: 5 | 當瀏覽器的一個標籤頁面執行Streamlit的應用程式時,整個streamlit應用程式會產生一個全新的session(當作一張白紙)。streamlit應用程式會由上而下執行所有的程式碼,並且依據程式碼建立session專用的變數。(白紙上記錄資料) 6 | 7 | 每一次使用者和streamlit應用程式互動時,streamlit清除所有的變數(又變成一張沒有記錄資料的白紙),程式會由上而下再執行一次。所以每次的使用者的互動無法保留原來的變數。 8 | 9 | Session state就是一個解決方案,讓每次程式每次由上而下執行時,重要的資訊(重要的記錄)可以儲存在session state內。如下圖表示! 10 | 11 |  12 | 13 | > 附註:當按下瀏覽器的重新整理時,是建立一個全新的Session。 14 | 15 | ### 為何要學習session_state 16 | - 下面程式有問題 17 | 18 | ```python 19 | #下面是錯誤的寫法 20 | #每按一次按鈕,一樣是顯示1 21 | #要了解原因必需要學會session_state 22 | import streamlit as st 23 | 24 | st.title('Counter Example') 25 | count = 0 26 | 27 | increment = st.button('Increment') 28 | if increment: 29 | count += 1 30 | 31 | st.write('Count = ', count) 32 | ``` 33 | 34 | ##### 初始化session_state 35 | 36 | ```python 37 | import streamlit as st 38 | 39 | # Check if 'key' already exists in session_state 40 | # If not, then initialize it 41 | if 'key' not in st.session_state: 42 | st.session_state['key'] = 'value' 43 | 44 | # Session State also supports the attribute based syntax 45 | if 'key' not in st.session_state: 46 | st.session_state.key = 'value' 47 | ``` 48 | 49 | ##### 讀取和更新session_state 50 | 51 | ```python 52 | import streamlit as st 53 | 54 | if 'key' not in st.session_state: 55 | st.session_state['key'] = 'value' 56 | 57 | # Reads 58 | st.write(st.session_state.key) 59 | 60 | # Outputs: value 61 | ``` 62 | 63 | 64 | ```python 65 | if 'key' not in st.session_state: 66 | st.session_state['key'] = 'value' 67 | 68 | # Updates 69 | st.session_state.key = 'value2' # Attribute API 70 | st.session_state['key'] = 'value2' # Dictionary like API 71 | ``` 72 | 73 | ##### 沒有初始化session_state,就取出會throw exception 74 | 75 | ```python 76 | mport streamlit as st 77 | 78 | st.write(st.session_state['value']) 79 | 80 | # Throws an exception! 81 | ``` 82 | 83 | ##### 增加session state(計數器的標準寫法) 84 | 85 | ```python 86 | import streamlit as st 87 | 88 | st.title('Counter Example') 89 | if 'count' not in st.session_state: 90 | st.session_state.count = 0 91 | 92 | increment = st.button('Increment') 93 | if increment: 94 | st.session_state.count += 1 95 | 96 | st.write('Count = ', st.session_state.count) 97 | ``` 98 | 99 | ##### Session State 和 Callback 100 | 101 | ```python 102 | import streamlit as st 103 | 104 | st.title('Counter Example using Callbacks') 105 | if 'count' not in st.session_state: 106 | st.session_state.count = 0 107 | 108 | def increment_counter(): 109 | st.session_state.count += 1 110 | 111 | st.button('Increment', on_click=increment_counter) 112 | 113 | st.write('Count = ', st.session_state.count) 114 | ``` 115 | 116 | #### Callback 和 args,kwargs 117 | 118 | ```python 119 | import streamlit as st 120 | 121 | st.title('Counter Example using Callbacks with args') 122 | if 'count' not in st.session_state: 123 | st.session_state.count = 0 124 | 125 | increment_value = st.number_input('Enter a value', value=0, step=1) 126 | 127 | def increment_counter(increment_value): 128 | st.session_state.count += increment_value 129 | 130 | increment = st.button('Increment', on_click=increment_counter, 131 | args=(increment_value, )) 132 | 133 | st.write('Count = ', st.session_state.count) 134 | ``` 135 | 136 | ``` 137 | import streamlit as st 138 | 139 | st.title('Counter Example using Callbacks with kwargs') 140 | if 'count' not in st.session_state: 141 | st.session_state.count = 0 142 | 143 | def increment_counter(increment_value=0): 144 | st.session_state.count += increment_value 145 | 146 | def decrement_counter(decrement_value=0): 147 | st.session_state.count -= decrement_value 148 | 149 | st.button('Increment', on_click=increment_counter, 150 | kwargs=dict(increment_value=5)) 151 | 152 | st.button('Decrement', on_click=decrement_counter, 153 | kwargs=dict(decrement_value=1)) 154 | 155 | st.write('Count = ', st.session_state.count) 156 | ``` 157 | 158 | 159 | ##### Forms and Callback 160 | 161 | ```python 162 | import streamlit as st 163 | import datetime 164 | 165 | st.title('Counter Example') 166 | if 'count' not in st.session_state: 167 | st.session_state.count = 0 168 | st.session_state.last_updated = datetime.time(0,0) 169 | 170 | def update_counter(): 171 | st.session_state.count += st.session_state.increment_value 172 | st.session_state.last_updated = st.session_state.update_time 173 | 174 | with st.form(key='my_form'): 175 | st.time_input(label='Enter the time', value=datetime.datetime.now().time(), key='update_time') 176 | st.number_input('Enter a value', value=0, step=1, key='increment_value') 177 | submit = st.form_submit_button(label='Update', on_click=update_counter) 178 | 179 | st.write('Current Count = ', st.session_state.count) 180 | st.write('Last Updated = ', st.session_state.last_updated) 181 | ``` 182 | 183 | #### Advanced concepts 184 | 185 | ##### Session State and Widget State association 186 | 187 | ```python 188 | import streamlit as st 189 | 190 | if "celsius" not in st.session_state: 191 | # set the initial default value of the slider widget 192 | st.session_state.celsius = 50.0 193 | 194 | st.slider( 195 | "Temperature in Celsius", 196 | min_value=-100.0, 197 | max_value=100.0, 198 | key="celsius" 199 | ) 200 | 201 | # This will get the value of the slider widget 202 | st.write(st.session_state.celsius) 203 | ``` 204 | 205 | 206 | ##### 重要,st.button,st.file_uploader, 不可以使用Session API 設定default value 207 | 208 | ```python 209 | #會出錯 210 | import streamlit as st 211 | 212 | if 'my_button' not in st.session_state: 213 | st.session_state.my_button = True 214 | # Streamlit will raise an Exception on trying to set the state of button 215 | 216 | st.button('Submit', key='my_button') 217 | ``` 218 | 219 | 220 | ### 範例1(1session_state_basics.py): 221 | 222 | - session_state初始化 223 | - 更改session_state 224 | - 刪除session_state 225 | 226 | ``` 227 | import streamlit as st 228 | 229 | st.title("Session State Basics") 230 | 231 | "st.session_state object:", st.session_state 232 | 233 | if 'a_counter' not in st.session_state: #初始化 234 | st.session_state['a_counter'] = 0 #只執行一次 235 | 236 | if "boolean" not in st.session_state: #初始化 237 | st.session_state.boolean = False #只執行一次 238 | 239 | st.write(st.session_state) 240 | 241 | st.write("a_counter is:", st.session_state["a_counter"]) 242 | st.write("boolean is:",st.session_state.boolean) 243 | 244 | for the_key in st.session_state.keys(): #取出所有session_state的key 245 | st.write(the_key) 246 | 247 | for the_value in st.session_state.values():#取出所有session_state的value 248 | st.write(the_value) 249 | 250 | for item in st.session_state.items():#取出所有session_state的key,value 251 | item 252 | 253 | button = st.button("Update State",key="button") #button第一次始始化,button初設定為false,按一下,就更改為true,未來都是true了 254 | 255 | "按button之前",st.session_state 256 | 257 | 258 | if button: 259 | st.session_state['a_counter'] += 1 260 | st.session_state.boolean = not st.session_state.boolean 261 | "按完按鈕後",st.session_state 262 | 263 | 264 | #for key in st.session_state.keys(): #清空所有的session_state 265 | # del st.session_state[key] 266 | # 267 | #st.session_state 268 | 269 | ``` 270 | 271 | 272 | ### 範例2(2sessionStateWithWidgets.py): 273 | - 了解widgets和session_state的關係 274 | 275 | ``` 276 | import streamlit as st 277 | 278 | st.title("Session State Basics") 279 | 280 | "st.session_state object:", st.session_state 281 | 282 | ## works with all widgets 283 | number = st.slider("A number",1, 10, key="slider") #重要,session_state沒有就初始化,有就更新 284 | 285 | st.write(st.session_state) 286 | 287 | col1, buff, col2 = st.columns([1,0.5,3]) #columns已經在此建立container 288 | 289 | #---------這一段最後寫------------ 290 | next = st.button("Next optin") #button第一次始始化,next初設定為false,按一下,就更改為true 291 | 292 | if next: 293 | if st.session_state["radio_option"] == 'a': 294 | st.session_state.radio_option = 'b' 295 | elif st.session_state["radio_option"] == 'b': 296 | st.session_state.radio_option = 'c' 297 | else: 298 | st.session_state.radio_option = 'a' 299 | #---------這一段最後寫------------ 300 | 301 | option_names = ["a", "b", "c"] 302 | option = col1.radio("請選擇1個",option_names,key="radio_option") 303 | st.session_state 304 | 305 | if option == 'a': 306 | col2.write("您選擇的是'a' :smile:") 307 | elif option == 'b': 308 | col2.write("您選擇的是'b' :heart:") 309 | else: 310 | col2.write("您選擇是'c' :rocket:") 311 | 312 | ``` 313 | 314 | ### callbacks function的運作 315 | - 可以籍由參數名稱on_change和on_click 使用callbacks 316 | - 可以接受on_change和on_click的引數值使用function名稱 317 | 318 | ### 範例3(3sessionStateWithCallBack.py) 319 | 320 | ``` 321 | import streamlit as st 322 | 323 | st.title("Session State Basic") 324 | "st.session_state object:", st.session_state 325 | 326 | def lbs_to_kg(): 327 | st.session_state.kg = st.session_state.lbs/2.2046 328 | 329 | def kg_to_lbs(): 330 | st.session_state.lbs = st.session_state.kg * 2.2046 331 | 332 | col1, buff, col2 = st.columns([2,1,2]) 333 | with col1: 334 | st.number_input("Pounds:",key='lbs', on_change=lbs_to_kg) 335 | 336 | with col2: 337 | st.number_input("Kilograms:", key="kg", on_change=kg_to_lbs) 338 | ``` 339 | 340 | ## 參考文件: 341 | - 文章介紹: 342 | - [Add statefulness to apps 官方說明](https://docs.streamlit.io/library/advanced-features/session-state) 343 | 344 | - [Session State for Streamlit](https://blog.streamlit.io/session-state-for-streamlit/) 345 | 346 | 347 | 348 | - 影片介紹: 349 | - [Session State basic官方說明](https://youtu.be/92jUAXBmZyU?si=acJpTrmuIkcG0XW3) 350 | 351 | - [How to use Streamlit session states and callback functions](https://youtu.be/5l9COMQ3acc?si=aRPhivyJN3xdixqk) 352 | -------------------------------------------------------------------------------- /session_state_manager/images/pic1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/session_state_manager/images/pic1.png -------------------------------------------------------------------------------- /session_state_manager/session_state概念.jam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/session_state_manager/session_state概念.jam -------------------------------------------------------------------------------- /安裝和執行/README.md: -------------------------------------------------------------------------------- 1 | 2 | ## 安裝 3 | - python3.8-python3.11 4 | 5 | ```python 6 | $ pip install streamlit 7 | ``` 8 | 9 | ## 執行streamlit 10 | 11 | ``` 12 | $ streamlit run your_script.py 13 | ``` 14 | 15 | ## 快速Demo 16 | 17 | ```python 18 | $ streamlit run https://raw.githubusercontent.com/streamlit/demo-uber-nyc-pickups/master/streamlit_app.py 19 | ``` 20 | 21 | -------------------------------------------------------------------------------- /實際案例/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/實際案例/.DS_Store -------------------------------------------------------------------------------- /實際案例/exchange_rate/README.md: -------------------------------------------------------------------------------- 1 | ## 台幣匯率換算 2 |  -------------------------------------------------------------------------------- /實際案例/exchange_rate/images/pic1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/實際案例/exchange_rate/images/pic1.png -------------------------------------------------------------------------------- /實際案例/exchange_rate/main.py: -------------------------------------------------------------------------------- 1 | import requests 2 | import os 3 | import streamlit as st 4 | from datetime import datetime,timezone,timedelta 5 | import pandas as pd 6 | #台灣銀行牌告匯率下載csv網址 7 | # https://rate.bot.com.tw/xrt/flcsv/0/day 8 | 9 | @st.cache_data 10 | def get_today() -> str: 11 | #建立時區 12 | t = timezone(timedelta(hours=8)) 13 | #取得現在時間 14 | current_datetime = datetime.now(tz=t) 15 | #建立存檔檔案名稱 16 | today_str = current_datetime.strftime("%Y-%m-%d") 17 | return today_str 18 | 19 | @st.cache_data 20 | def get_csv_filePath() -> str: 21 | #建立時區 22 | t = timezone(timedelta(hours=8)) 23 | #取得現在時間 24 | current_datetime = datetime.now(tz=t) 25 | #建立存檔檔案名稱 26 | file_name= current_datetime.strftime("%Y%m%d.csv") 27 | file_absname = f'{os.path.dirname(__file__)}/rates_data/{file_name}' 28 | return file_absname 29 | 30 | def download_save_file(url:str)->None: 31 | file_path = get_csv_filePath() 32 | if not os.path.exists(file_path): 33 | #沒有這個檔案 34 | response = requests.get(url) 35 | encoding = response.encoding 36 | if response.status_code == 200: 37 | with open(file_path,mode='w',encoding=encoding,newline='') as file: 38 | file.write(response.text) 39 | 40 | @st.cache_data 41 | def rates_dataFrame() -> pd.DataFrame: 42 | file_path = get_csv_filePath() 43 | df = pd.read_csv(file_path) 44 | right_df = df[['匯率','匯率.1']] 45 | right_df.columns = ['買進','賣出'] 46 | return right_df 47 | 48 | @st.cache_data 49 | def get_rate(df:pd.DataFrame) -> pd.Series: 50 | list_s = pd.Series({'USD':'美金','HKD':'港幣','GBP':'英鎊','CAD':'加拿大幣', 51 | 'SGD':'新加坡幣','CHF':'瑞士法郎','JPY':'日圓','ZAR':'南非幣', 52 | 'SEK':'瑞典幣','NDZ':'紐元','THB':'泰幣','PHP':'菲國比索','IDR':'印尼幣', 53 | 'EUR':'歐元','KRW':'韓元','VND':'越南盾','MYR':'馬來幣','CNY':'人民幣' 54 | }) 55 | 56 | return list_s.apply(lambda val: val+ list_s[list_s == val].index[0]) 57 | 58 | 59 | 60 | 61 | url = 'https://rate.bot.com.tw/xrt/flcsv/0/day' 62 | download_save_file(url) 63 | st.write(f'台灣銀行牌告匯率 {get_today()}') 64 | df = rates_dataFrame() 65 | st.write(df.T) 66 | 67 | #sidebar 68 | st.sidebar.title("台幣匯率換算") 69 | st.sidebar.divider() 70 | add_radio = st.sidebar.radio( 71 | "試算方式:", 72 | ("買入","賣出") 73 | ) 74 | 75 | st.sidebar.divider() 76 | 77 | add_selectbox = st.sidebar.selectbox( 78 | "請選擇貨幣:", 79 | get_rate(df) 80 | ) 81 | st.sidebar.divider() 82 | if add_radio == '買入': 83 | st.sidebar.write('買入'+add_selectbox[-3:]) 84 | num = st.sidebar.number_input("",0) 85 | nt_dallar = df['賣出'][add_selectbox[-3:]] * num 86 | st.sidebar.write(f'買入{add_selectbox[-3:]}需要{round(nt_dallar,ndigits=2)}台幣') 87 | else: 88 | st.sidebar.write('賣出'+add_selectbox[-3:]) 89 | num = st.sidebar.number_input("",0) 90 | nt_dallar = df['買進'][add_selectbox[-3:]] * num 91 | st.sidebar.write(f'賣出{add_selectbox[-3:]}可得{round(nt_dallar,ndigits=2)}台幣') 92 | 93 | print(df) 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | -------------------------------------------------------------------------------- /實際案例/exchange_rate/rates_data/20230804.csv: -------------------------------------------------------------------------------- 1 | 幣別,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天 2 | USD,本行買入,31.29000,31.61500,31.61200,31.51900,31.40100,31.28500,31.16000,31.04900,30.93200,本行賣出,31.96000,31.76500,31.71800,31.63200,31.52400,31.42000,31.30500,31.20300,31.09700, 3 | HKD,本行買入,3.90300,4.02400,4.02300,4.01200,4.00000,3.98800,3.97400,3.96100,3.94700,本行賣出,4.10700,4.09400,4.08300,4.07300,4.06200,4.04800,4.03600,4.02500,4.01300, 4 | GBP,本行買入,39.07000,39.96500,40.01100,39.89400,39.76800,39.61700,39.46400,39.31200,39.15900,本行賣出,41.19000,40.59500,40.42300,40.32900,40.20500,40.05600,39.91700,39.77700,39.63800, 5 | AUD,本行買入,20.39000,20.60500,20.67100,20.63300,20.58600,20.53000,20.47100,20.41400,20.35300,本行賣出,21.17000,20.95000,20.86800,20.82400,20.77800,20.72000,20.67100,20.61900,20.56500, 6 | CAD,本行買入,23.21000,23.54000,23.58700,23.52000,23.45400,23.37600,23.29700,23.21800,23.13900,本行賣出,24.12000,23.87000,23.79500,23.74500,23.68100,23.60100,23.53100,23.46200,23.39200, 7 | SGD,本行買入,23.02000,23.49000,23.49600,23.44700,23.40200,23.35100,23.29800,23.24500,23.19200,本行賣出,23.93000,23.71000,23.68500,23.65400,23.60900,23.55700,23.51400,23.47100,23.42700, 8 | CHF,本行買入,35.35000,35.96000,35.98500,35.95600,35.94900,35.93300,35.92200,35.91000,35.89900,本行賣出,36.55000,36.35000,36.25000,36.25100,36.24800,36.23100,36.23600,36.24000,36.24500, 9 | JPY,本行買入,0.21310,0.21990,0.22020,0.22030,0.22060,0.22080,0.22100,0.22120,0.22140,本行賣出,0.22590,0.22490,0.22430,0.22460,0.22480,0.22510,0.22550,0.22580,0.22610, 10 | ZAR,本行買入,0.00000,1.65100,1.65000,1.64100,1.63000,1.61900,1.60800,1.59600,1.58500,本行賣出,0.00000,1.74100,1.73000,1.72300,1.71300,1.70100,1.69100,1.68000,1.67000, 11 | SEK,本行買入,2.58000,2.91000,2.90700,2.90100,2.89500,2.88800,2.88100,2.87400,2.86700,本行賣出,3.10000,3.03000,3.00800,3.00500,2.99900,2.99200,2.98600,2.98100,2.97500, 12 | NZD,本行買入,18.79000,19.12000,19.16900,19.10800,19.04600,18.97500,18.90100,18.82700,18.75300,本行賣出,19.64000,19.42000,19.37800,19.33500,19.27400,19.20300,19.13700,19.07000,19.00400, 13 | THB,本行買入,0.78380,0.89320,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.97380,0.93920,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 14 | PHP,本行買入,0.50300,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.63500,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 15 | IDR,本行買入,0.00168,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00238,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 16 | EUR,本行買入,33.89000,34.40500,34.44500,34.35400,34.25900,34.18700,34.10400,34.02100,33.88200,本行賣出,35.23000,35.00500,34.88800,34.88500,34.80400,34.75200,34.68700,34.62100,34.55500, 17 | KRW,本行買入,0.02243,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.02633,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 18 | VND,本行買入,0.00109,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00150,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 19 | MYR,本行買入,5.91700,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,7.43700,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 20 | CNY,本行買入,4.30900,4.37600,4.38010,4.37620,4.37180,4.36800,4.36170,4.35360,4.34920,本行賣出,4.47100,4.43600,4.43120,4.42960,4.42600,4.42230,4.41800,4.41360,4.40920, 21 | -------------------------------------------------------------------------------- /實際案例/exchange_rate/rates_data/20230805.csv: -------------------------------------------------------------------------------- 1 | 幣別,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天 2 | USD,本行買入,31.29000,31.61500,31.61200,31.51900,31.40100,31.28500,31.16000,31.04900,30.93200,本行賣出,31.96000,31.76500,31.71800,31.63200,31.52400,31.42000,31.30500,31.20300,31.09700, 3 | HKD,本行買入,3.90200,4.02300,4.02300,4.01200,4.00000,3.98800,3.97400,3.96100,3.94700,本行賣出,4.10600,4.09300,4.08300,4.07300,4.06200,4.04800,4.03600,4.02500,4.01300, 4 | GBP,本行買入,39.22000,40.11500,40.01100,39.89400,39.76800,39.61700,39.46400,39.31200,39.15900,本行賣出,41.34000,40.74500,40.42300,40.32900,40.20500,40.05600,39.91700,39.77700,39.63800, 5 | AUD,本行買入,20.44000,20.65500,20.67100,20.63300,20.58600,20.53000,20.47100,20.41400,20.35300,本行賣出,21.22000,21.00000,20.86800,20.82400,20.77800,20.72000,20.67100,20.61900,20.56500, 6 | CAD,本行買入,23.21000,23.54000,23.58700,23.52000,23.45400,23.37600,23.29700,23.21800,23.13900,本行賣出,24.12000,23.87000,23.79500,23.74500,23.68100,23.60100,23.53100,23.46200,23.39200, 7 | SGD,本行買入,23.08000,23.55000,23.49600,23.44700,23.40200,23.35100,23.29800,23.24500,23.19200,本行賣出,23.99000,23.77000,23.68500,23.65400,23.60900,23.55700,23.51400,23.47100,23.42700, 8 | CHF,本行買入,35.50000,36.11000,35.98500,35.95600,35.94900,35.93300,35.92200,35.91000,35.89900,本行賣出,36.70000,36.50000,36.25000,36.25100,36.24800,36.23100,36.23600,36.24000,36.24500, 9 | JPY,本行買入,0.21440,0.22120,0.22020,0.22030,0.22060,0.22080,0.22100,0.22120,0.22140,本行賣出,0.22720,0.22620,0.22430,0.22460,0.22480,0.22510,0.22550,0.22580,0.22610, 10 | ZAR,本行買入,0.00000,1.67100,1.65000,1.64100,1.63000,1.61900,1.60800,1.59600,1.58500,本行賣出,0.00000,1.76100,1.73000,1.72300,1.71300,1.70100,1.69100,1.68000,1.67000, 11 | SEK,本行買入,2.61000,2.94000,2.90700,2.90100,2.89500,2.88800,2.88100,2.87400,2.86700,本行賣出,3.13000,3.06000,3.00800,3.00500,2.99900,2.99200,2.98600,2.98100,2.97500, 12 | NZD,本行買入,18.85000,19.18000,19.16900,19.10800,19.04600,18.97500,18.90100,18.82700,18.75300,本行賣出,19.70000,19.48000,19.37800,19.33500,19.27400,19.20300,19.13700,19.07000,19.00400, 13 | THB,本行買入,0.78630,0.89570,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.97630,0.94170,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 14 | PHP,本行買入,0.50320,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.63520,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 15 | IDR,本行買入,0.00168,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00238,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 16 | EUR,本行買入,34.09000,34.60500,34.44500,34.35400,34.25900,34.18700,34.10400,34.02100,33.88200,本行賣出,35.43000,35.20500,34.88800,34.88500,34.80400,34.75200,34.68700,34.62100,34.55500, 17 | KRW,本行買入,0.02256,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.02646,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 18 | VND,本行買入,0.00109,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00150,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 19 | MYR,本行買入,5.91700,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,7.43700,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 20 | CNY,本行買入,4.31300,4.38000,4.38010,4.37620,4.37180,4.36800,4.36170,4.35360,4.34920,本行賣出,4.47500,4.44000,4.43120,4.42960,4.42600,4.42230,4.41800,4.41360,4.40920, 21 | -------------------------------------------------------------------------------- /實際案例/exchange_rate/rates_data/20230811.csv: -------------------------------------------------------------------------------- 1 | 幣別,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天,匯率,現金,即期,遠期10天,遠期30天,遠期60天,遠期90天,遠期120天,遠期150天,遠期180天 2 | USD,本行買入,31.39500,31.74500,31.71700,31.62400,31.50600,31.39000,31.26500,31.15400,31.03700,本行賣出,32.06500,31.84500,31.82300,31.73700,31.62900,31.52500,31.41000,31.30800,31.20200, 3 | HKD,本行買入,3.91100,4.03700,4.03200,4.02100,4.00900,3.99700,3.98300,3.97000,3.95600,本行賣出,4.11500,4.09700,4.09200,4.08200,4.07100,4.05700,4.04500,4.03400,4.02200, 4 | GBP,本行買入,39.23000,40.24000,40.18100,40.06400,39.93800,39.78700,39.63400,39.48200,39.32900,本行賣出,41.35000,40.64000,40.59300,40.49900,40.37500,40.22600,40.08700,39.94700,39.80800, 5 | AUD,本行買入,20.37000,20.66000,20.64100,20.60300,20.55600,20.50000,20.44100,20.38400,20.32300,本行賣出,21.15000,20.86000,20.83800,20.79400,20.74800,20.69000,20.64100,20.58900,20.53500, 6 | CAD,本行買入,23.17000,23.57000,23.53700,23.47000,23.40400,23.32600,23.24700,23.16800,23.08900,本行賣出,24.08000,23.77000,23.74500,23.69500,23.63100,23.55100,23.48100,23.41200,23.34200, 7 | SGD,本行買入,23.01000,23.50000,23.47600,23.42700,23.38200,23.33100,23.27800,23.22500,23.17200,本行賣出,23.92000,23.68000,23.66500,23.63400,23.58900,23.53700,23.49400,23.45100,23.40700, 8 | CHF,本行買入,35.46000,36.14000,36.12500,36.09600,36.08900,36.07300,36.06200,36.05000,36.03900,本行賣出,36.66000,36.39000,36.39000,36.39100,36.38800,36.37100,36.37600,36.38000,36.38500, 9 | JPY,本行買入,0.21040,0.21770,0.21780,0.21790,0.21810,0.21830,0.21850,0.21880,0.21900,本行賣出,0.22320,0.22170,0.22180,0.22200,0.22230,0.22260,0.22300,0.22330,0.22370, 10 | ZAR,本行買入,0.00000,1.64800,1.64400,1.63500,1.62400,1.61300,1.60200,1.59000,1.57900,本行賣出,0.00000,1.72800,1.72400,1.71700,1.70700,1.69500,1.68500,1.67400,1.66400, 11 | SEK,本行買入,2.59000,2.93000,2.92700,2.92100,2.91500,2.90800,2.90100,2.89400,2.88700,本行賣出,3.11000,3.03000,3.02800,3.02500,3.01900,3.01200,3.00600,3.00100,2.99500, 12 | NZD,本行買入,18.66000,19.04000,19.00900,18.94800,18.88600,18.81500,18.74100,18.66700,18.59300,本行賣出,19.51000,19.24000,19.21800,19.17500,19.11400,19.04300,18.97700,18.91000,18.84400, 13 | THB,本行買入,0.77810,0.89050,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.96810,0.93050,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 14 | PHP,本行買入,0.49960,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.63160,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 15 | IDR,本行買入,0.00173,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00243,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 16 | EUR,本行買入,34.15000,34.77000,34.74200,34.68500,34.59400,34.51500,34.43800,34.36000,34.23300,本行賣出,35.49000,35.17000,35.14900,35.10700,35.02800,34.97100,34.91100,34.85100,34.79100, 17 | KRW,本行買入,0.02227,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.02617,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 18 | VND,本行買入,0.00112,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,0.00153,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 19 | MYR,本行買入,5.89500,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,本行賣出,7.41500,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000,0.00000, 20 | CNY,本行買入,4.29400,4.36600,4.36420,4.36070,4.35470,4.34920,4.34450,4.33800,4.33530,本行賣出,4.45600,4.41600,4.41440,4.41110,4.40740,4.40340,4.40030,4.39720,4.39410, 21 | -------------------------------------------------------------------------------- /實際案例/finance/README.md: -------------------------------------------------------------------------------- 1 | ## 股票交易 2 | - pip install ffn 3 | - 報表說明(https://havocfuture.tw/blog/howto-eva-portfolio) 4 | 5 |  -------------------------------------------------------------------------------- /實際案例/finance/codeSearch.csv: -------------------------------------------------------------------------------- 1 | index,上市有價證券種類,code,name,CFICode 2 | 0,股票,1101,台泥,ESVUFR 3 | 1,股票,1102,亞泥,ESVUFR 4 | 2,股票,1103,嘉泥,ESVUFR 5 | 3,股票,1104,環泥,ESVUFR 6 | 4,股票,1108,幸福,ESVUFR 7 | 5,股票,1109,信大,ESVUFR 8 | 6,股票,1110,東泥,ESVUFR 9 | 7,股票,1201,味全,ESVUFR 10 | 8,股票,1203,味王,ESVUFR 11 | 9,股票,1210,大成,ESVUFR 12 | 10,股票,1213,大飲,ESVUFR 13 | 11,股票,1215,卜蜂,ESVUFR 14 | 12,股票,1216,統一,ESVUFR 15 | 13,股票,1217,愛之味,ESVUFR 16 | 14,股票,1218,泰山,ESVUFR 17 | 15,股票,1219,福壽,ESVUFR 18 | 16,股票,1220,台榮,ESVUFR 19 | 17,股票,1225,福懋油,ESVUFR 20 | 18,股票,1227,佳格,ESVUFR 21 | 19,股票,1229,聯華,ESVUFR 22 | 20,股票,1231,聯華食,ESVUFR 23 | 21,股票,1232,大統益,ESVUFR 24 | 22,股票,1233,天仁,ESVUFR 25 | 23,股票,1234,黑松,ESVUFR 26 | 24,股票,1235,興泰,ESVUFR 27 | 25,股票,1236,宏亞,ESVUFR 28 | 26,股票,1256,鮮活果汁-KY,ESVUFR 29 | 27,股票,1301,台塑,ESVUFR 30 | 28,股票,1303,南亞,ESVUFR 31 | 29,股票,1304,台聚,ESVUFR 32 | 30,股票,1305,華夏,ESVUFR 33 | 31,股票,1307,三芳,ESVUFR 34 | 32,股票,1308,亞聚,ESVUFR 35 | 33,股票,1309,台達化,ESVUFR 36 | 34,股票,1310,台苯,ESVUFR 37 | 35,股票,1312,國喬,ESVUFR 38 | 36,股票,1313,聯成,ESVUFR 39 | 37,股票,1314,中石化,ESVUFR 40 | 38,股票,1315,達新,ESVUFR 41 | 39,股票,1316,上曜,ESVUFR 42 | 40,股票,1319,東陽,ESVUFR 43 | 41,股票,1321,大洋,ESVUFR 44 | 42,股票,1323,永裕,ESVUFR 45 | 43,股票,1324,地球,ESVUFR 46 | 44,股票,1325,恆大,ESVUFR 47 | 45,股票,1326,台化,ESVUFR 48 | 46,股票,1337,再生-KY,ESVUFR 49 | 47,股票,1338,廣華-KY,ESVUFR 50 | 48,股票,1339,昭輝,ESVUFR 51 | 49,股票,1340,勝悅-KY,ESVUFR 52 | 50,股票,1341,富林-KY,ESVUFR 53 | 51,股票,1342,八貫,ESVUFR 54 | 52,股票,1402,遠東新,ESVUFR 55 | 53,股票,1409,新纖,ESVUFR 56 | 54,股票,1410,南染,ESVUFR 57 | 55,股票,1413,宏洲,ESVUFR 58 | 56,股票,1414,東和,ESVUFR 59 | 57,股票,1416,廣豐,ESVUFR 60 | 58,股票,1417,嘉裕,ESVUFR 61 | 59,股票,1418,東華,ESVUFR 62 | 60,股票,1419,新紡,ESVUFR 63 | 61,股票,1423,利華,ESVUFR 64 | 62,股票,1432,大魯閣,ESVUFR 65 | 63,股票,1434,福懋,ESVUFR 66 | 64,股票,1435,中福,ESVUFR 67 | 65,股票,1436,華友聯,ESVUFR 68 | 66,股票,1437,勤益控,ESVUFR 69 | 67,股票,1438,三地開發,ESVUFR 70 | 68,股票,1439,雋揚,ESVUFR 71 | 69,股票,1440,南紡,ESVUFR 72 | 70,股票,1441,大東,ESVUFR 73 | 71,股票,1442,名軒,ESVUFR 74 | 72,股票,1443,立益物流,ESVUFR 75 | 73,股票,1444,力麗,ESVUFR 76 | 74,股票,1445,大宇,ESVUFR 77 | 75,股票,1446,宏和,ESVUFR 78 | 76,股票,1447,力鵬,ESVUFR 79 | 77,股票,1449,佳和,ESVUFR 80 | 78,股票,1451,年興,ESVUFR 81 | 79,股票,1452,宏益,ESVUFR 82 | 80,股票,1453,大將,ESVUFR 83 | 81,股票,1454,台富,ESVUFR 84 | 82,股票,1455,集盛,ESVUFR 85 | 83,股票,1456,怡華,ESVUFR 86 | 84,股票,1457,宜進,ESVUFR 87 | 85,股票,1459,聯發,ESVUFR 88 | 86,股票,1460,宏遠,ESVUFR 89 | 87,股票,1463,強盛,ESVUFR 90 | 88,股票,1464,得力,ESVUFR 91 | 89,股票,1465,偉全,ESVUFR 92 | 90,股票,1466,聚隆,ESVUFR 93 | 91,股票,1467,南緯,ESVUFR 94 | 92,股票,1468,昶和,ESVUFR 95 | 93,股票,1470,大統新創,ESVUFR 96 | 94,股票,1471,首利,ESVUFR 97 | 95,股票,1472,三洋實業,ESVUFR 98 | 96,股票,1473,台南,ESVUFR 99 | 97,股票,1474,弘裕,ESVUFR 100 | 98,股票,1475,業旺,ESVUFR 101 | 99,股票,1476,儒鴻,ESVUFR 102 | 100,股票,1477,聚陽,ESVUFR 103 | 101,股票,1503,士電,ESVUFR 104 | 102,股票,1504,東元,ESVUFR 105 | 103,股票,1506,正道,ESVUFR 106 | 104,股票,1512,瑞利,ESVUFR 107 | 105,股票,1513,中興電,ESVUFR 108 | 106,股票,1514,亞力,ESVUFR 109 | 107,股票,1515,力山,ESVUFR 110 | 108,股票,1516,川飛,ESVUFR 111 | 109,股票,1517,利奇,ESVUFR 112 | 110,股票,1519,華城,ESVUFR 113 | 111,股票,1521,大億,ESVUFR 114 | 112,股票,1522,堤維西,ESVUFR 115 | 113,股票,1524,耿鼎,ESVUFR 116 | 114,股票,1525,江申,ESVUFR 117 | 115,股票,1526,日馳,ESVUFR 118 | 116,股票,1527,鑽全,ESVUFR 119 | 117,股票,1528,恩德,ESVUFR 120 | 118,股票,1529,樂事綠能,ESVUFR 121 | 119,股票,1530,亞崴,ESVUFR 122 | 120,股票,1531,高林股,ESVUFR 123 | 121,股票,1532,勤美,ESVUFR 124 | 122,股票,1533,車王電,ESVUFR 125 | 123,股票,1535,中宇,ESVUFR 126 | 124,股票,1536,和大,ESVUFR 127 | 125,股票,1537,廣隆,ESVUFR 128 | 126,股票,1538,正峰,ESVUFR 129 | 127,股票,1539,巨庭,ESVUFR 130 | 128,股票,1540,喬福,ESVUFR 131 | 129,股票,1541,錩泰,ESVUFR 132 | 130,股票,1558,伸興,ESVUFR 133 | 131,股票,1560,中砂,ESVUFR 134 | 132,股票,1568,倉佑,ESVUFR 135 | 133,股票,1582,信錦,ESVUFR 136 | 134,股票,1583,程泰,ESVUFR 137 | 135,股票,1587,吉茂,ESVUFR 138 | 136,股票,1589,永冠-KY,ESVUFR 139 | 137,股票,1590,亞德客-KY,ESVUFR 140 | 138,股票,1597,直得,ESVUFR 141 | 139,股票,1598,岱宇,ESVUFR 142 | 140,股票,1603,華電,ESVUFR 143 | 141,股票,1604,聲寶,ESVUFR 144 | 142,股票,1605,華新,ESVUFR 145 | 143,股票,1608,華榮,ESVUFR 146 | 144,股票,1609,大亞,ESVUFR 147 | 145,股票,1611,中電,ESVUFR 148 | 146,股票,1612,宏泰,ESVUFR 149 | 147,股票,1614,三洋電,ESVUFR 150 | 148,股票,1615,大山,ESVUFR 151 | 149,股票,1616,億泰,ESVUFR 152 | 150,股票,1617,榮星,ESVUFR 153 | 151,股票,1618,合機,ESVUFR 154 | 152,股票,1626,艾美特-KY,ESVUFR 155 | 153,股票,1701,中化,ESVUFR 156 | 154,股票,1702,南僑,ESVUFR 157 | 155,股票,1707,葡萄王,ESVUFR 158 | 156,股票,1708,東鹼,ESVUFR 159 | 157,股票,1709,和益,ESVUFR 160 | 158,股票,1710,東聯,ESVUFR 161 | 159,股票,1711,永光,ESVUFR 162 | 160,股票,1712,興農,ESVUFR 163 | 161,股票,1713,國化,ESVUFR 164 | 162,股票,1714,和桐,ESVUFR 165 | 163,股票,1717,長興,ESVUFR 166 | 164,股票,1718,中纖,ESVUFR 167 | 165,股票,1720,生達,ESVUFR 168 | 166,股票,1721,三晃,ESVUFR 169 | 167,股票,1722,台肥,ESVUFR 170 | 168,股票,1723,中碳,ESVUFR 171 | 169,股票,1725,元禎,ESVUFR 172 | 170,股票,1726,永記,ESVUFR 173 | 171,股票,1727,中華化,ESVUFR 174 | 172,股票,1730,花仙子,ESVUFR 175 | 173,股票,1731,美吾華,ESVUFR 176 | 174,股票,1732,毛寶,ESVUFR 177 | 175,股票,1733,五鼎,ESVUFR 178 | 176,股票,1734,杏輝,ESVUFR 179 | 177,股票,1735,日勝化,ESVUFR 180 | 178,股票,1736,喬山,ESVUFR 181 | 179,股票,1737,臺鹽,ESVUFR 182 | 180,股票,1752,南光,ESVUFR 183 | 181,股票,1760,寶齡富錦,ESVUFR 184 | 182,股票,1762,中化生,ESVUFR 185 | 183,股票,1773,勝一,ESVUFR 186 | 184,股票,1776,展宇,ESVUFR 187 | 185,股票,1783,和康生,ESVUFR 188 | 186,股票,1786,科妍,ESVUFR 189 | 187,股票,1789,神隆,ESVUFR 190 | 188,股票,1795,美時,ESVUFR 191 | 189,股票,1802,台玻,ESVUFR 192 | 190,股票,1805,寶徠,ESVUFR 193 | 191,股票,1806,冠軍,ESVUFR 194 | 192,股票,1808,潤隆,ESVUFR 195 | 193,股票,1809,中釉,ESVUFR 196 | 194,股票,1810,和成,ESVUFR 197 | 195,股票,1817,凱撒衛,ESVUFR 198 | 196,股票,1903,士紙,ESVUFR 199 | 197,股票,1904,正隆,ESVUFR 200 | 198,股票,1905,華紙,ESVUFR 201 | 199,股票,1906,寶隆,ESVUFR 202 | 200,股票,1907,永豐餘,ESVUFR 203 | 201,股票,1909,榮成,ESVUFR 204 | 202,股票,2002,中鋼,ESVUFR 205 | 203,股票,2006,東和鋼鐵,ESVUFR 206 | 204,股票,2007,燁興,ESVUFR 207 | 205,股票,2008,高興昌,ESVUFR 208 | 206,股票,2009,第一銅,ESVUFR 209 | 207,股票,2010,春源,ESVUFR 210 | 208,股票,2012,春雨,ESVUFR 211 | 209,股票,2013,中鋼構,ESVUFR 212 | 210,股票,2014,中鴻,ESVUFR 213 | 211,股票,2015,豐興,ESVUFR 214 | 212,股票,2017,官田鋼,ESVUFR 215 | 213,股票,2020,美亞,ESVUFR 216 | 214,股票,2022,聚亨,ESVUFR 217 | 215,股票,2023,燁輝,ESVUFR 218 | 216,股票,2024,志聯,ESVUFR 219 | 217,股票,2025,千興,ESVUFR 220 | 218,股票,2027,大成鋼,ESVUFR 221 | 219,股票,2028,威致,ESVUFR 222 | 220,股票,2029,盛餘,ESVUFR 223 | 221,股票,2030,彰源,ESVUFR 224 | 222,股票,2031,新光鋼,ESVUFR 225 | 223,股票,2032,新鋼,ESVUFR 226 | 224,股票,2033,佳大,ESVUFR 227 | 225,股票,2034,允強,ESVUFR 228 | 226,股票,2038,海光,ESVUFR 229 | 227,股票,2049,上銀,ESVUFR 230 | 228,股票,2059,川湖,ESVUFR 231 | 229,股票,2062,橋椿,ESVUFR 232 | 230,股票,2069,運錩,ESVUFR 233 | 231,股票,2101,南港,ESVUFR 234 | 232,股票,2102,泰豐,ESVUFR 235 | 233,股票,2103,台橡,ESVUFR 236 | 234,股票,2104,國際中橡,ESVUFR 237 | 235,股票,2105,正新,ESVUFR 238 | 236,股票,2106,建大,ESVUFR 239 | 237,股票,2107,厚生,ESVUFR 240 | 238,股票,2108,南帝,ESVUFR 241 | 239,股票,2109,華豐,ESVUFR 242 | 240,股票,2114,鑫永銓,ESVUFR 243 | 241,股票,2115,六暉-KY,ESVUFR 244 | 242,股票,2201,裕隆,ESVUFR 245 | 243,股票,2204,中華,ESVUFR 246 | 244,股票,2206,三陽工業,ESVUFR 247 | 245,股票,2207,和泰車,ESVUFR 248 | 246,股票,2208,台船,ESVUFR 249 | 247,股票,2211,長榮鋼,ESVUFR 250 | 248,股票,2227,裕日車,ESVUFR 251 | 249,股票,2228,劍麟,ESVUFR 252 | 250,股票,2231,為升,ESVUFR 253 | 251,股票,2233,宇隆,ESVUFR 254 | 252,股票,2236,百達-KY,ESVUFR 255 | 253,股票,2239,英利-KY,ESVUFR 256 | 254,股票,2241,艾姆勒,ESVUFR 257 | 255,股票,2243,宏旭-KY,ESVUFR 258 | 256,股票,2247,汎德永業,ESVUFR 259 | 257,股票,2250,IKKA-KY,ESVUFR 260 | 258,股票,2301,光寶科,ESVUFR 261 | 259,股票,2302,麗正,ESVUFR 262 | 260,股票,2303,聯電,ESVUFR 263 | 261,股票,2305,全友,ESVUFR 264 | 262,股票,2308,台達電,ESVUFR 265 | 263,股票,2312,金寶,ESVUFR 266 | 264,股票,2313,華通,ESVUFR 267 | 265,股票,2314,台揚,ESVUFR 268 | 266,股票,2316,楠梓電,ESVUFR 269 | 267,股票,2317,鴻海,ESVUFR 270 | 268,股票,2321,東訊,ESVUFR 271 | 269,股票,2323,中環,ESVUFR 272 | 270,股票,2324,仁寶,ESVUFR 273 | 271,股票,2327,國巨,ESVUFR 274 | 272,股票,2328,廣宇,ESVUFR 275 | 273,股票,2329,華泰,ESVUFR 276 | 274,股票,2330,台積電,ESVUFR 277 | 275,股票,2331,精英,ESVUFR 278 | 276,股票,2332,友訊,ESVUFR 279 | 277,股票,2337,旺宏,ESVUFR 280 | 278,股票,2338,光罩,ESVUFR 281 | 279,股票,2340,台亞,ESVUFR 282 | 280,股票,2342,茂矽,ESVUFR 283 | 281,股票,2344,華邦電,ESVUFR 284 | 282,股票,2345,智邦,ESVUFR 285 | 283,股票,2347,聯強,ESVUFR 286 | 284,股票,2348,海悅,ESVUFR 287 | 285,股票,2349,錸德,ESVUFR 288 | 286,股票,2351,順德,ESVUFR 289 | 287,股票,2352,佳世達,ESVUFR 290 | 288,股票,2353,宏碁,ESVUFR 291 | 289,股票,2354,鴻準,ESVUFR 292 | 290,股票,2355,敬鵬,ESVUFR 293 | 291,股票,2356,英業達,ESVUFR 294 | 292,股票,2357,華碩,ESVUFR 295 | 293,股票,2358,廷鑫,ESVUFR 296 | 294,股票,2359,所羅門,ESVUFR 297 | 295,股票,2360,致茂,ESVUFR 298 | 296,股票,2362,藍天,ESVUFR 299 | 297,股票,2363,矽統,ESVUFR 300 | 298,股票,2364,倫飛,ESVUFR 301 | 299,股票,2365,昆盈,ESVUFR 302 | 300,股票,2367,燿華,ESVUFR 303 | 301,股票,2368,金像電,ESVUFR 304 | 302,股票,2369,菱生,ESVUFR 305 | 303,股票,2371,大同,ESVUFR 306 | 304,股票,2373,震旦行,ESVUFR 307 | 305,股票,2374,佳能,ESVUFR 308 | 306,股票,2375,凱美,ESVUFR 309 | 307,股票,2376,技嘉,ESVUFR 310 | 308,股票,2377,微星,ESVUFR 311 | 309,股票,2379,瑞昱,ESVUFR 312 | 310,股票,2380,虹光,ESVUFR 313 | 311,股票,2382,廣達,ESVUFR 314 | 312,股票,2383,台光電,ESVUFR 315 | 313,股票,2385,群光,ESVUFR 316 | 314,股票,2387,精元,ESVUFR 317 | 315,股票,2388,威盛,ESVUFR 318 | 316,股票,2390,云辰,ESVUFR 319 | 317,股票,2392,正崴,ESVUFR 320 | 318,股票,2393,億光,ESVUFR 321 | 319,股票,2395,研華,ESVUFR 322 | 320,股票,2397,友通,ESVUFR 323 | 321,股票,2399,映泰,ESVUFR 324 | 322,股票,2401,凌陽,ESVUFR 325 | 323,股票,2402,毅嘉,ESVUFR 326 | 324,股票,2404,漢唐,ESVUFR 327 | 325,股票,2405,輔信,ESVUFR 328 | 326,股票,2406,國碩,ESVUFR 329 | 327,股票,2408,南亞科,ESVUFR 330 | 328,股票,2409,友達,ESVUFR 331 | 329,股票,2412,中華電,ESVUFR 332 | 330,股票,2413,環科,ESVUFR 333 | 331,股票,2414,精技,ESVUFR 334 | 332,股票,2415,錩新,ESVUFR 335 | 333,股票,2417,圓剛,ESVUFR 336 | 334,股票,2419,仲琦,ESVUFR 337 | 335,股票,2420,新巨,ESVUFR 338 | 336,股票,2421,建準,ESVUFR 339 | 337,股票,2423,固緯,ESVUFR 340 | 338,股票,2424,隴華,ESVUFR 341 | 339,股票,2425,承啟,ESVUFR 342 | 340,股票,2426,鼎元,ESVUFR 343 | 341,股票,2427,三商電,ESVUFR 344 | 342,股票,2428,興勤,ESVUFR 345 | 343,股票,2429,銘旺科,ESVUFR 346 | 344,股票,2430,燦坤,ESVUFR 347 | 345,股票,2431,聯昌,ESVUFR 348 | 346,股票,2433,互盛電,ESVUFR 349 | 347,股票,2434,統懋,ESVUFR 350 | 348,股票,2436,偉詮電,ESVUFR 351 | 349,股票,2438,翔耀,ESVUFR 352 | 350,股票,2439,美律,ESVUFR 353 | 351,股票,2440,太空梭,ESVUFR 354 | 352,股票,2441,超豐,ESVUFR 355 | 353,股票,2442,新美齊,ESVUFR 356 | 354,股票,2443,昶虹,ESVUFR 357 | 355,股票,2444,兆勁,ESVUFR 358 | 356,股票,2449,京元電子,ESVUFR 359 | 357,股票,2450,神腦,ESVUFR 360 | 358,股票,2451,創見,ESVUFR 361 | 359,股票,2453,凌群,ESVUFR 362 | 360,股票,2454,聯發科,ESVUFR 363 | 361,股票,2455,全新,ESVUFR 364 | 362,股票,2457,飛宏,ESVUFR 365 | 363,股票,2458,義隆,ESVUFR 366 | 364,股票,2459,敦吉,ESVUFR 367 | 365,股票,2460,建通,ESVUFR 368 | 366,股票,2461,光群雷,ESVUFR 369 | 367,股票,2462,良得電,ESVUFR 370 | 368,股票,2464,盟立,ESVUFR 371 | 369,股票,2465,麗臺,ESVUFR 372 | 370,股票,2466,冠西電,ESVUFR 373 | 371,股票,2467,志聖,ESVUFR 374 | 372,股票,2468,華經,ESVUFR 375 | 373,股票,2471,資通,ESVUFR 376 | 374,股票,2472,立隆電,ESVUFR 377 | 375,股票,2474,可成,ESVUFR 378 | 376,股票,2476,鉅祥,ESVUFR 379 | 377,股票,2477,美隆電,ESVUFR 380 | 378,股票,2478,大毅,ESVUFR 381 | 379,股票,2480,敦陽科,ESVUFR 382 | 380,股票,2481,強茂,ESVUFR 383 | 381,股票,2482,連宇,ESVUFR 384 | 382,股票,2483,百容,ESVUFR 385 | 383,股票,2484,希華,ESVUFR 386 | 384,股票,2485,兆赫,ESVUFR 387 | 385,股票,2486,一詮,ESVUFR 388 | 386,股票,2488,漢平,ESVUFR 389 | 387,股票,2489,瑞軒,ESVUFR 390 | 388,股票,2491,吉祥全,ESVUFR 391 | 389,股票,2492,華新科,ESVUFR 392 | 390,股票,2493,揚博,ESVUFR 393 | 391,股票,2495,普安,ESVUFR 394 | 392,股票,2496,卓越,ESVUFR 395 | 393,股票,2497,怡利電,ESVUFR 396 | 394,股票,2498,宏達電,ESVUFR 397 | 395,股票,2501,國建,ESVUFR 398 | 396,股票,2504,國產,ESVUFR 399 | 397,股票,2505,國揚,ESVUFR 400 | 398,股票,2506,太設,ESVUFR 401 | 399,股票,2509,全坤建,ESVUFR 402 | 400,股票,2511,太子,ESVUFR 403 | 401,股票,2514,龍邦,ESVUFR 404 | 402,股票,2515,中工,ESVUFR 405 | 403,股票,2516,新建,ESVUFR 406 | 404,股票,2520,冠德,ESVUFR 407 | 405,股票,2524,京城,ESVUFR 408 | 406,股票,2527,宏璟,ESVUFR 409 | 407,股票,2528,皇普,ESVUFR 410 | 408,股票,2530,華建,ESVUFR 411 | 409,股票,2534,宏盛,ESVUFR 412 | 410,股票,2535,達欣工,ESVUFR 413 | 411,股票,2536,宏普,ESVUFR 414 | 412,股票,2537,聯上發,ESVUFR 415 | 413,股票,2538,基泰,ESVUFR 416 | 414,股票,2539,櫻花建,ESVUFR 417 | 415,股票,2540,愛山林,ESVUFR 418 | 416,股票,2542,興富發,ESVUFR 419 | 417,股票,2543,皇昌,ESVUFR 420 | 418,股票,2545,皇翔,ESVUFR 421 | 419,股票,2546,根基,ESVUFR 422 | 420,股票,2547,日勝生,ESVUFR 423 | 421,股票,2548,華固,ESVUFR 424 | 422,股票,2597,潤弘,ESVUFR 425 | 423,股票,2601,益航,ESVUFR 426 | 424,股票,2603,長榮,ESVUFR 427 | 425,股票,2605,新興,ESVUFR 428 | 426,股票,2606,裕民,ESVUFR 429 | 427,股票,2607,榮運,ESVUFR 430 | 428,股票,2608,嘉里大榮,ESVUFR 431 | 429,股票,2609,陽明,ESVUFR 432 | 430,股票,2610,華航,ESVUFR 433 | 431,股票,2611,志信,ESVUFR 434 | 432,股票,2612,中航,ESVUFR 435 | 433,股票,2613,中櫃,ESVUFR 436 | 434,股票,2614,東森,ESVUFR 437 | 435,股票,2615,萬海,ESVUFR 438 | 436,股票,2616,山隆,ESVUFR 439 | 437,股票,2617,台航,ESVUFR 440 | 438,股票,2618,長榮航,ESVUFR 441 | 439,股票,2630,亞航,ESVUFR 442 | 440,股票,2633,台灣高鐵,ESVUFR 443 | 441,股票,2634,漢翔,ESVUFR 444 | 442,股票,2636,台驊投控,ESVUFR 445 | 443,股票,2637,慧洋-KY,ESVUFR 446 | 444,股票,2642,宅配通,ESVUFR 447 | 445,股票,2645,長榮航太,ESVUFR 448 | 446,股票,2701,萬企,ESVUFR 449 | 447,股票,2702,華園,ESVUFR 450 | 448,股票,2704,國賓,ESVUFR 451 | 449,股票,2705,六福,ESVUFR 452 | 450,股票,2706,第一店,ESVUFR 453 | 451,股票,2707,晶華,ESVUFR 454 | 452,股票,2712,遠雄來,ESVUFR 455 | 453,股票,2722,夏都,ESVUFR 456 | 454,股票,2723,美食-KY,ESVUFR 457 | 455,股票,2727,王品,ESVUFR 458 | 456,股票,2731,雄獅,ESVUFR 459 | 457,股票,2739,寒舍,ESVUFR 460 | 458,股票,2748,雲品,ESVUFR 461 | 459,股票,2753,八方雲集,ESVUFR 462 | 460,股票,2801,彰銀,ESVUFR 463 | 461,股票,2809,京城銀,ESVUFR 464 | 462,股票,2812,台中銀,ESVUFR 465 | 463,股票,2816,旺旺保,ESVUFR 466 | 464,股票,2820,華票,ESVUFR 467 | 465,股票,2832,台產,ESVUFR 468 | 466,股票,2834,臺企銀,ESVUFR 469 | 467,股票,2836,高雄銀,ESVUFR 470 | 468,股票,2838,聯邦銀,ESVUFR 471 | 469,股票,2845,遠東銀,ESVUFR 472 | 470,股票,2849,安泰銀,ESVUFR 473 | 471,股票,2850,新產,ESVUFR 474 | 472,股票,2851,中再保,ESVUFR 475 | 473,股票,2852,第一保,ESVUFR 476 | 474,股票,2855,統一證,ESVUFR 477 | 475,股票,2867,三商壽,ESVUFR 478 | 476,股票,2880,華南金,ESVUFR 479 | 477,股票,2881,富邦金,ESVUFR 480 | 478,股票,2882,國泰金,ESVUFR 481 | 479,股票,2883,開發金,ESVUFR 482 | 480,股票,2884,玉山金,ESVUFR 483 | 481,股票,2885,元大金,ESVUFR 484 | 482,股票,2886,兆豐金,ESVUFR 485 | 483,股票,2887,台新金,ESVUFR 486 | 484,股票,2888,新光金,ESVUFR 487 | 485,股票,2889,國票金,ESVUFR 488 | 486,股票,2890,永豐金,ESVUFR 489 | 487,股票,2891,中信金,ESVUFR 490 | 488,股票,2892,第一金,ESVUFR 491 | 489,股票,2897,王道銀行,ESVUFR 492 | 490,股票,2901,欣欣,ESVUFR 493 | 491,股票,2903,遠百,ESVUFR 494 | 492,股票,2904,匯僑,ESVUFR 495 | 493,股票,2905,三商,ESVUFR 496 | 494,股票,2906,高林,ESVUFR 497 | 495,股票,2908,特力,ESVUFR 498 | 496,股票,2910,統領,ESVUFR 499 | 497,股票,2911,麗嬰房,ESVUFR 500 | 498,股票,2912,統一超,ESVUFR 501 | 499,股票,2913,農林,ESVUFR 502 | 500,股票,2915,潤泰全,ESVUFR 503 | 501,股票,2923,鼎固-KY,ESVUFR 504 | 502,股票,2929,淘帝-KY,ESVUFR 505 | 503,股票,2939,凱羿-KY,ESVUFR 506 | 504,股票,2945,三商家購,ESVUFR 507 | 505,股票,3002,歐格,ESVUFR 508 | 506,股票,3003,健和興,ESVUFR 509 | 507,股票,3004,豐達科,ESVUFR 510 | 508,股票,3005,神基,ESVUFR 511 | 509,股票,3006,晶豪科,ESVUFR 512 | 510,股票,3008,大立光,ESVUFR 513 | 511,股票,3010,華立,ESVUFR 514 | 512,股票,3011,今皓,ESVUFR 515 | 513,股票,3013,晟銘電,ESVUFR 516 | 514,股票,3014,聯陽,ESVUFR 517 | 515,股票,3015,全漢,ESVUFR 518 | 516,股票,3016,嘉晶,ESVUFR 519 | 517,股票,3017,奇鋐,ESVUFR 520 | 518,股票,3018,隆銘綠能,ESVUFR 521 | 519,股票,3019,亞光,ESVUFR 522 | 520,股票,3021,鴻名,ESVUFR 523 | 521,股票,3022,威強電,ESVUFR 524 | 522,股票,3023,信邦,ESVUFR 525 | 523,股票,3024,憶聲,ESVUFR 526 | 524,股票,3025,星通,ESVUFR 527 | 525,股票,3026,禾伸堂,ESVUFR 528 | 526,股票,3027,盛達,ESVUFR 529 | 527,股票,3028,增你強,ESVUFR 530 | 528,股票,3029,零壹,ESVUFR 531 | 529,股票,3030,德律,ESVUFR 532 | 530,股票,3031,佰鴻,ESVUFR 533 | 531,股票,3032,偉訓,ESVUFR 534 | 532,股票,3033,威健,ESVUFR 535 | 533,股票,3034,聯詠,ESVUFR 536 | 534,股票,3035,智原,ESVUFR 537 | 535,股票,3036,文曄,ESVUFR 538 | 536,股票,3037,欣興,ESVUFR 539 | 537,股票,3038,全台,ESVUFR 540 | 538,股票,3040,遠見,ESVUFR 541 | 539,股票,3041,揚智,ESVUFR 542 | 540,股票,3042,晶技,ESVUFR 543 | 541,股票,3043,科風,ESVUFR 544 | 542,股票,3044,健鼎,ESVUFR 545 | 543,股票,3045,台灣大,ESVUFR 546 | 544,股票,3046,建碁,ESVUFR 547 | 545,股票,3047,訊舟,ESVUFR 548 | 546,股票,3048,益登,ESVUFR 549 | 547,股票,3049,和鑫,ESVUFR 550 | 548,股票,3050,鈺德,ESVUFR 551 | 549,股票,3051,力特,ESVUFR 552 | 550,股票,3052,夆典,ESVUFR 553 | 551,股票,3054,立萬利,ESVUFR 554 | 552,股票,3055,蔚華科,ESVUFR 555 | 553,股票,3056,總太,ESVUFR 556 | 554,股票,3057,喬鼎,ESVUFR 557 | 555,股票,3058,立德,ESVUFR 558 | 556,股票,3059,華晶科,ESVUFR 559 | 557,股票,3060,銘異,ESVUFR 560 | 558,股票,3062,建漢,ESVUFR 561 | 559,股票,3090,日電貿,ESVUFR 562 | 560,股票,3092,鴻碩,ESVUFR 563 | 561,股票,3094,聯傑,ESVUFR 564 | 562,股票,3130,一零四,ESVUFR 565 | 563,股票,3138,耀登,ESVUFR 566 | 564,股票,3149,正達,ESVUFR 567 | 565,股票,3164,景岳,ESVUFR 568 | 566,股票,3167,大量,ESVUFR 569 | 567,股票,3189,景碩,ESVUFR 570 | 568,股票,3209,全科,ESVUFR 571 | 569,股票,3229,晟鈦,ESVUFR 572 | 570,股票,3231,緯創,ESVUFR 573 | 571,股票,3257,虹冠電,ESVUFR 574 | 572,股票,3266,昇陽,ESVUFR 575 | 573,股票,3296,勝德,ESVUFR 576 | 574,股票,3305,昇貿,ESVUFR 577 | 575,股票,3308,聯德,ESVUFR 578 | 576,股票,3311,閎暉,ESVUFR 579 | 577,股票,3312,弘憶股,ESVUFR 580 | 578,股票,3321,同泰,ESVUFR 581 | 579,股票,3338,泰碩,ESVUFR 582 | 580,股票,3346,麗清,ESVUFR 583 | 581,股票,3356,奇偶,ESVUFR 584 | 582,股票,3376,新日興,ESVUFR 585 | 583,股票,3380,明泰,ESVUFR 586 | 584,股票,3406,玉晶光,ESVUFR 587 | 585,股票,3413,京鼎,ESVUFR 588 | 586,股票,3416,融程電,ESVUFR 589 | 587,股票,3419,譁裕,ESVUFR 590 | 588,股票,3432,台端,ESVUFR 591 | 589,股票,3437,榮創,ESVUFR 592 | 590,股票,3443,創意,ESVUFR 593 | 591,股票,3447,展達,ESVUFR 594 | 592,股票,3450,聯鈞,ESVUFR 595 | 593,股票,3454,晶睿,ESVUFR 596 | 594,股票,3481,群創,ESVUFR 597 | 595,股票,3494,誠研,ESVUFR 598 | 596,股票,3501,維熹,ESVUFR 599 | 597,股票,3504,揚明光,ESVUFR 600 | 598,股票,3515,華擎,ESVUFR 601 | 599,股票,3518,柏騰,ESVUFR 602 | 600,股票,3528,安馳,ESVUFR 603 | 601,股票,3530,晶相光,ESVUFR 604 | 602,股票,3532,台勝科,ESVUFR 605 | 603,股票,3533,嘉澤,ESVUFR 606 | 604,股票,3535,晶彩科,ESVUFR 607 | 605,股票,3536,誠創,ESVUFR 608 | 606,股票,3543,州巧,ESVUFR 609 | 607,股票,3545,敦泰,ESVUFR 610 | 608,股票,3550,聯穎,ESVUFR 611 | 609,股票,3557,嘉威,ESVUFR 612 | 610,股票,3563,牧德,ESVUFR 613 | 611,股票,3576,聯合再生,ESVUFR 614 | 612,股票,3583,辛耘,ESVUFR 615 | 613,股票,3588,通嘉,ESVUFR 616 | 614,股票,3591,艾笛森,ESVUFR 617 | 615,股票,3592,瑞鼎,ESVUFR 618 | 616,股票,3593,力銘,ESVUFR 619 | 617,股票,3596,智易,ESVUFR 620 | 618,股票,3605,宏致,ESVUFR 621 | 619,股票,3607,谷崧,ESVUFR 622 | 620,股票,3617,碩天,ESVUFR 623 | 621,股票,3622,洋華,ESVUFR 624 | 622,股票,3645,達邁,ESVUFR 625 | 623,股票,3652,精聯,ESVUFR 626 | 624,股票,3653,健策,ESVUFR 627 | 625,股票,3661,世芯-KY,ESVUFR 628 | 626,股票,3665,貿聯-KY,ESVUFR 629 | 627,股票,3669,圓展,ESVUFR 630 | 628,股票,3673,TPK-KY,ESVTFR 631 | 629,股票,3679,新至陞,ESVUFR 632 | 630,股票,3682,亞太電,ESVUFR 633 | 631,股票,3686,達能,ESVUFR 634 | 632,股票,3694,海華,ESVUFR 635 | 633,股票,3701,大眾控,ESVUFR 636 | 634,股票,3702,大聯大,ESVUFR 637 | 635,股票,3703,欣陸,ESVUFR 638 | 636,股票,3704,合勤控,ESVUFR 639 | 637,股票,3705,永信,ESVUFR 640 | 638,股票,3706,神達,ESVUFR 641 | 639,股票,3708,上緯投控,ESVUFR 642 | 640,股票,3711,日月光投控,ESVUFR 643 | 641,股票,3712,永崴投控,ESVUFR 644 | 642,股票,3714,富采,ESVUFR 645 | 643,股票,3715,定穎投控,ESVUFR 646 | 644,股票,4104,佳醫,ESVUFR 647 | 645,股票,4106,雃博,ESVUFR 648 | 646,股票,4108,懷特,ESVUFR 649 | 647,股票,4119,旭富,ESVUFR 650 | 648,股票,4133,亞諾法,ESVUFR 651 | 649,股票,4137,麗豐-KY,ESVUFR 652 | 650,股票,4142,國光生,ESVUFR 653 | 651,股票,4148 ,全宇生技-KY,ESVUFR 654 | 652,股票,4155,訊映,ESVUFR 655 | 653,股票,4164,承業醫,ESVUFR 656 | 654,股票,4190,佐登-KY,ESVUFR 657 | 655,股票,4306,炎洲,ESVUFR 658 | 656,股票,4414,如興,ESVUFR 659 | 657,股票,4426,利勤,ESVUFR 660 | 658,股票,4438,廣越,ESVUFR 661 | 659,股票,4439,冠星-KY,ESVUFR 662 | 660,股票,4440,宜新實業,ESVUFR 663 | 661,股票,4526,東台,ESVUFR 664 | 662,股票,4532,瑞智,ESVUFR 665 | 663,股票,4536,拓凱,ESVUFR 666 | 664,股票,4540,全球傳動,ESVUFR 667 | 665,股票,4545,銘鈺,ESVUFR 668 | 666,股票,4551,智伸科,ESVUFR 669 | 667,股票,4552,力達-KY,ESVUFR 670 | 668,股票,4555,氣立,ESVUFR 671 | 669,股票,4557,永新-KY,ESVUFR 672 | 670,股票,4560,強信-KY,ESVUFR 673 | 671,股票,4562,穎漢,ESVUFR 674 | 672,股票,4564,元翎,ESVUFR 675 | 673,股票,4566,時碩工業,ESVUFR 676 | 674,股票,4571,鈞興-KY,ESVUFR 677 | 675,股票,4572,駐龍,ESVUFR 678 | 676,股票,4576,大銀微系統,ESVUFR 679 | 677,股票,4581,光隆精密-KY,ESVUFR 680 | 678,股票,4583,台灣精銳,ESVUFR 681 | 679,股票,4720,德淵,ESVUFR 682 | 680,股票,4722,國精化,ESVUFR 683 | 681,股票,4737,華廣,ESVUFR 684 | 682,股票,4739,康普,ESVUFR 685 | 683,股票,4746,台耀,ESVUFR 686 | 684,股票,4755,三福化,ESVUFR 687 | 685,股票,4763,材料-KY,ESVUFR 688 | 686,股票,4764,雙鍵,ESVUFR 689 | 687,股票,4766,南寶,ESVUFR 690 | 688,股票,4770,上品,ESVUFR 691 | 689,股票,4807,日成-KY,ESVUFR 692 | 690,股票,4904,遠傳,ESVUFR 693 | 691,股票,4906,正文,ESVUFR 694 | 692,股票,4912,聯德控股-KY,ESVUFR 695 | 693,股票,4915,致伸,ESVUFR 696 | 694,股票,4916,事欣科,ESVUFR 697 | 695,股票,4919,新唐,ESVUFR 698 | 696,股票,4927,泰鼎-KY,ESVUFR 699 | 697,股票,4930,燦星網,ESVUFR 700 | 698,股票,4934,太極,ESVUFR 701 | 699,股票,4935,茂林-KY,ESVUFR 702 | 700,股票,4938,和碩,ESVUFR 703 | 701,股票,4942,嘉彰,ESVUFR 704 | 702,股票,4943,康控-KY,ESVUFR 705 | 703,股票,4952,凌通,ESVUFR 706 | 704,股票,4956,光鋐,ESVUFR 707 | 705,股票,4958,臻鼎-KY,ESVUFR 708 | 706,股票,4960,誠美材,ESVUFR 709 | 707,股票,4961,天鈺,ESVUFR 710 | 708,股票,4967,十銓,ESVUFR 711 | 709,股票,4968,立積,ESVUFR 712 | 710,股票,4976,佳凌,ESVUFR 713 | 711,股票,4977,眾達-KY,ESVUFR 714 | 712,股票,4989,榮科,ESVUFR 715 | 713,股票,4994,傳奇,ESVUFR 716 | 714,股票,4999,鑫禾,ESVUFR 717 | 715,股票,5007,三星,ESVUFR 718 | 716,股票,5203,訊連,ESVUFR 719 | 717,股票,5215,科嘉-KY,ESVUFR 720 | 718,股票,5222,全訊,ESVUFR 721 | 719,股票,5225,東科-KY,ESVUFR 722 | 720,股票,5234,達興材料,ESVUFR 723 | 721,股票,5243,乙盛-KY,ESVUFR 724 | 722,股票,5244,弘凱,ESVUFR 725 | 723,股票,5258,虹堡,ESVUFR 726 | 724,股票,5269,祥碩,ESVUFR 727 | 725,股票,5283,禾聯碩,ESVUFR 728 | 726,股票,5284,jpp-KY,ESVUFR 729 | 727,股票,5285,界霖,ESVUFR 730 | 728,股票,5288,豐祥-KY,ESVUFR 731 | 729,股票,5306,桂盟,ESVUFR 732 | 730,股票,5388,中磊,ESVUFR 733 | 731,股票,5434,崇越,ESVUFR 734 | 732,股票,5469,瀚宇博,ESVUFR 735 | 733,股票,5471,松翰,ESVUFR 736 | 734,股票,5484,慧友,ESVUFR 737 | 735,股票,5515,建國,ESVUFR 738 | 736,股票,5519,隆大,ESVUFR 739 | 737,股票,5521,工信,ESVUFR 740 | 738,股票,5522,遠雄,ESVUFR 741 | 739,股票,5525,順天,ESVUFR 742 | 740,股票,5531,鄉林,ESVUFR 743 | 741,股票,5533,皇鼎,ESVUFR 744 | 742,股票,5534,長虹,ESVUFR 745 | 743,股票,5538,東明-KY,ESVUFR 746 | 744,股票,5546,永固-KY,ESVUFR 747 | 745,股票,5607,遠雄港,ESVUFR 748 | 746,股票,5608,四維航,ESVUFR 749 | 747,股票,5706,鳳凰,ESVUFR 750 | 748,股票,5871,中租-KY,ESVUFR 751 | 749,股票,5876,上海商銀,ESVUFR 752 | 750,股票,5880,合庫金,ESVUFR 753 | 751,股票,5906,台南-KY,ESVUFR 754 | 752,股票,5907,大洋-KY,ESVUFR 755 | 753,股票,6005,群益證,ESVUFR 756 | 754,股票,6024,群益期,ESVUFR 757 | 755,股票,6108,競國,ESVUFR 758 | 756,股票,6112,邁達特,ESVUFR 759 | 757,股票,6115,鎰勝,ESVUFR 760 | 758,股票,6116,彩晶,ESVUFR 761 | 759,股票,6117,迎廣,ESVUFR 762 | 760,股票,6120,達運,ESVUFR 763 | 761,股票,6128,上福,ESVUFR 764 | 762,股票,6133,金橋,ESVUFR 765 | 763,股票,6136,富爾特,ESVUFR 766 | 764,股票,6139,亞翔,ESVUFR 767 | 765,股票,6141,柏承,ESVUFR 768 | 766,股票,6142,友勁,ESVUFR 769 | 767,股票,6152,百一,ESVUFR 770 | 768,股票,6153,嘉聯益,ESVUFR 771 | 769,股票,6155,鈞寶,ESVUFR 772 | 770,股票,6164,華興,ESVUFR 773 | 771,股票,6165,浪凡,ESVUFR 774 | 772,股票,6166,凌華,ESVUFR 775 | 773,股票,6168,宏齊,ESVUFR 776 | 774,股票,6176,瑞儀,ESVUFR 777 | 775,股票,6177,達麗,ESVUFR 778 | 776,股票,6183,關貿,ESVUFR 779 | 777,股票,6184,大豐電,ESVUFR 780 | 778,股票,6189,豐藝,ESVUFR 781 | 779,股票,6191,精成科,ESVUFR 782 | 780,股票,6192,巨路,ESVUFR 783 | 781,股票,6196,帆宣,ESVUFR 784 | 782,股票,6197,佳必琪,ESVUFR 785 | 783,股票,6201,亞弘電,ESVUFR 786 | 784,股票,6202,盛群,ESVUFR 787 | 785,股票,6205,詮欣,ESVUFR 788 | 786,股票,6206,飛捷,ESVUFR 789 | 787,股票,6209,今國光,ESVUFR 790 | 788,股票,6213,聯茂,ESVUFR 791 | 789,股票,6214,精誠,ESVUFR 792 | 790,股票,6215,和椿,ESVUFR 793 | 791,股票,6216,居易,ESVUFR 794 | 792,股票,6224,聚鼎,ESVUFR 795 | 793,股票,6225,天瀚,ESVUFR 796 | 794,股票,6226,光鼎,ESVUFR 797 | 795,股票,6230,尼得科超眾,ESVUFR 798 | 796,股票,6235,華孚,ESVUFR 799 | 797,股票,6239,力成,ESVUFR 800 | 798,股票,6243,迅杰,ESVUFR 801 | 799,股票,6257,矽格,ESVUFR 802 | 800,股票,6269,台郡,ESVUFR 803 | 801,股票,6271,同欣電,ESVUFR 804 | 802,股票,6277,宏正,ESVUFR 805 | 803,股票,6278,台表科,ESVUFR 806 | 804,股票,6281,全國電,ESVUFR 807 | 805,股票,6282,康舒,ESVUFR 808 | 806,股票,6283,淳安,ESVUFR 809 | 807,股票,6285,啟碁,ESVUFR 810 | 808,股票,6288,聯嘉,ESVUFR 811 | 809,股票,6405,悅城,ESVUFR 812 | 810,股票,6409,旭隼,ESVUFR 813 | 811,股票,6412,群電,ESVUFR 814 | 812,股票,6414,樺漢,ESVUFR 815 | 813,股票,6415,矽力*-KY,ESVUFR 816 | 814,股票,6416,瑞祺電通,ESVUFR 817 | 815,股票,6426,統新,ESVUFR 818 | 816,股票,6431,光麗-KY,ESVUFR 819 | 817,股票,6438,迅得,ESVUFR 820 | 818,股票,6442,光聖,ESVUFR 821 | 819,股票,6443,元晶,ESVUFR 822 | 820,股票,6449,鈺邦,ESVUFR 823 | 821,股票,6451,訊芯-KY,ESVUFR 824 | 822,股票,6456,GIS-KY,ESVUFR 825 | 823,股票,6464,台數科,ESVUFR 826 | 824,股票,6477,安集,ESVUFR 827 | 825,股票,6491,晶碩,ESVUFR 828 | 826,股票,6504,南六,ESVUFR 829 | 827,股票,6505,台塑化,ESVUFR 830 | 828,股票,6515,穎崴,ESVUFR 831 | 829,股票,6525,捷敏-KY,ESVUFR 832 | 830,股票,6531,愛普*,ESVUFR 833 | 831,股票,6533,晶心科,ESVUFR 834 | 832,股票,6541,泰福-KY,ESVUFR 835 | 833,股票,6550,北極星藥業-KY,ESVUFR 836 | 834,股票,6552,易華電,ESVUFR 837 | 835,股票,6558,興能高,ESVUFR 838 | 836,股票,6573,虹揚-KY,ESVUFR 839 | 837,股票,6579,研揚,ESVUFR 840 | 838,股票,6581,鋼聯,ESVUFR 841 | 839,股票,6582,申豐,ESVUFR 842 | 840,股票,6585,鼎基,ESVUFR 843 | 841,股票,6591,動力-KY,ESVUFR 844 | 842,股票,6592,和潤企業,ESVUFR 845 | 843,股票,6598,ABC-KY,ESVUFR 846 | 844,股票,6605,帝寶,ESVUFR 847 | 845,股票,6606,建德工業,ESVUFR 848 | 846,股票,6625,必應,ESVUFR 849 | 847,股票,6641,基士德-KY,ESVUFR 850 | 848,股票,6655,科定,ESVUFR 851 | 849,股票,6666,羅麗芬-KY,ESVUFR 852 | 850,股票,6668,中揚光,ESVUFR 853 | 851,股票,6669,緯穎,ESVUFR 854 | 852,股票,6670,復盛應用,ESVUFR 855 | 853,股票,6671,三能-KY,ESVUFR 856 | 854,股票,6672,騰輝電子-KY,ESVUFR 857 | 855,股票,6674,鋐寶科技,ESVUFR 858 | 856,股票,6689,伊雲谷,ESVUFR 859 | 857,股票,6691,洋基工程,ESVUFR 860 | 858,股票,6695,芯鼎,ESVUFR 861 | 859,股票,6698,旭暉應材,ESVUFR 862 | 860,股票,6706,惠特,ESVUFR 863 | 861,股票,6715,嘉基,ESVUFR 864 | 862,股票,6719,力智,ESVUFR 865 | 863,股票,6743,安普新,ESVUFR 866 | 864,股票,6753,龍德造船,ESVUFR 867 | 865,股票,6754,匯僑設計,ESVUFR 868 | 866,股票,6756,威鋒電子,ESVUFR 869 | 867,股票,6768,志強-KY,ESVUFR 870 | 868,股票,6770,力積電,ESVUFR 871 | 869,股票,6776,展碁國際,ESVUFR 872 | 870,股票,6781,AES-KY,ESVUFR 873 | 871,股票,6782,視陽,ESVUFR 874 | 872,股票,6789,采鈺,ESVUFR 875 | 873,股票,6790,永豐實,ESVUFR 876 | 874,股票,6792,詠業,ESVUFR 877 | 875,股票,6796,晉弘,ESVUFR 878 | 876,股票,6799,來頡,ESVUFR 879 | 877,股票,6806,森崴能源,ESVUFR 880 | 878,股票,6807,峰源-KY,ESVUFR 881 | 879,股票,6830,汎銓,ESVUFR 882 | 880,股票,6834,天二科技,ESVUFR 883 | 881,股票,6835,圓裕,ESVUFR 884 | 882,股票,6861,睿生光電,ESVUFR 885 | 883,股票,6863,永道-KY,ESVUFR 886 | 884,股票,8011,台通,ESVUFR 887 | 885,股票,8016,矽創,ESVUFR 888 | 886,股票,8021,尖點,ESVUFR 889 | 887,股票,8028,昇陽半導體,ESVUFR 890 | 888,股票,8033,雷虎,ESVUFR 891 | 889,股票,8039,台虹,ESVUFR 892 | 890,股票,8046,南電,ESVUFR 893 | 891,股票,8070,長華*,ESVUFR 894 | 892,股票,8072,陞泰,ESVUFR 895 | 893,股票,8081,致新,ESVUFR 896 | 894,股票,8101,華冠,ESVUFR 897 | 895,股票,8103,瀚荃,ESVUFR 898 | 896,股票,8104,錸寶,ESVUFR 899 | 897,股票,8105,凌巨,ESVUFR 900 | 898,股票,8110,華東,ESVUFR 901 | 899,股票,8112,至上,ESVUFR 902 | 900,股票,8114,振樺電,ESVUFR 903 | 901,股票,8131,福懋科,ESVUFR 904 | 902,股票,8150,南茂,ESVUFR 905 | 903,股票,8163,達方,ESVUFR 906 | 904,股票,8201,無敵,ESVUFR 907 | 905,股票,8210,勤誠,ESVUFR 908 | 906,股票,8213,志超,ESVUFR 909 | 907,股票,8215,明基材,ESVUFR 910 | 908,股票,8222,寶一,ESVUFR 911 | 909,股票,8249,菱光,ESVUFR 912 | 910,股票,8261,富鼎,ESVUFR 913 | 911,股票,8271,宇瞻,ESVUFR 914 | 912,股票,8341,日友,ESVUFR 915 | 913,股票,8367,建新國際,ESVUFR 916 | 914,股票,8374,羅昇,ESVUFR 917 | 915,股票,8404,百和興業-KY,ESVUFR 918 | 916,股票,8411,福貞-KY,ESVUFR 919 | 917,股票,8422,可寧衛,ESVUFR 920 | 918,股票,8429,金麗-KY,ESVUFR 921 | 919,股票,8438,昶昕,ESVUFR 922 | 920,股票,8442,威宏-KY,ESVUFR 923 | 921,股票,8443,阿瘦,ESVUFR 924 | 922,股票,8454,富邦媒,ESVUFR 925 | 923,股票,8462,柏文,ESVUFR 926 | 924,股票,8463,潤泰材,ESVUFR 927 | 925,股票,8464,億豐,ESVUFR 928 | 926,股票,8466,美吉吉-KY,ESVUFR 929 | 927,股票,8467,波力-KY,ESVUFR 930 | 928,股票,8473,山林水,ESVUFR 931 | 929,股票,8478,東哥遊艇,ESVUFR 932 | 930,股票,8481,政伸,ESVUFR 933 | 931,股票,8482,商億-KY,ESVUFR 934 | 932,股票,8488,吉源-KY,ESVUFR 935 | 933,股票,8499,鼎炫-KY,ESVUFR 936 | 934,股票,8926,台汽電,ESVUFR 937 | 935,股票,8940,新天地,ESVUFR 938 | 936,股票,8996,高力,ESVUFR 939 | 937,股票,9802,鈺齊-KY,ESVUFR 940 | 938,股票,9902,台火,ESVUFR 941 | 939,股票,9904,寶成,ESVUFR 942 | 940,股票,9905,大華,ESVUFR 943 | 941,股票,9906,欣巴巴,ESVUFR 944 | 942,股票,9907,統一實,ESVUFR 945 | 943,股票,9908,大台北,ESVUFR 946 | 944,股票,9910,豐泰,ESVUFR 947 | 945,股票,9911,櫻花,ESVUFR 948 | 946,股票,9912,偉聯,ESVUFR 949 | 947,股票,9914,美利達,ESVUFR 950 | 948,股票,9917,中保科,ESVUFR 951 | 949,股票,9918,欣天然,ESVUFR 952 | 950,股票,9919,康那香,ESVUFR 953 | 951,股票,9921,巨大,ESVUFR 954 | 952,股票,9924,福興,ESVUFR 955 | 953,股票,9925,新保,ESVUFR 956 | 954,股票,9926,新海,ESVUFR 957 | 955,股票,9927,泰銘,ESVUFR 958 | 956,股票,9928,中視,ESVUFR 959 | 957,股票,9929,秋雨,ESVUFR 960 | 958,股票,9930,中聯資源,ESVUFR 961 | 959,股票,9931,欣高,ESVUFR 962 | 960,股票,9933,中鼎,ESVUFR 963 | 961,股票,9934,成霖,ESVUFR 964 | 962,股票,9935,慶豐富,ESVUFR 965 | 963,股票,9937,全國,ESVUFR 966 | 964,股票,9938,百和,ESVUFR 967 | 965,股票,9939,宏全,ESVUFR 968 | 966,股票,9940,信義,ESVUFR 969 | 967,股票,9941,裕融,ESVUFR 970 | 968,股票,9942,茂順,ESVUFR 971 | 969,股票,9943,好樂迪,ESVUFR 972 | 970,股票,9944,新麗,ESVUFR 973 | 971,股票,9945,潤泰新,ESVUFR 974 | 972,股票,9946,三發地產,ESVUFR 975 | 973,股票,9955,佳龍,ESVUFR 976 | 974,股票,9958,世紀鋼,ESVUFR 977 | -------------------------------------------------------------------------------- /實際案例/finance/images/pic1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/roberthsu2003/pythonStreamlit/7d4edc69455ef6dd6fb2f2f332143c5c323994b0/實際案例/finance/images/pic1.png -------------------------------------------------------------------------------- /實際案例/finance/lesson2.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 11, 6 | "metadata": {}, 7 | "outputs": [ 8 | { 9 | "data": { 10 | "text/plain": [ 11 | "['1101',\n", 12 | " '1102',\n", 13 | " '1103',\n", 14 | " '1104',\n", 15 | " '1108',\n", 16 | " '1109',\n", 17 | " '1110',\n", 18 | " '1201',\n", 19 | " '1203',\n", 20 | " '1210',\n", 21 | " '1213',\n", 22 | " '1215',\n", 23 | " '1216',\n", 24 | " '1217',\n", 25 | " '1218',\n", 26 | " '1219',\n", 27 | " '1220',\n", 28 | " '1225',\n", 29 | " '1227',\n", 30 | " '1229',\n", 31 | " '1231',\n", 32 | " '1232',\n", 33 | " '1233',\n", 34 | " '1234',\n", 35 | " '1235',\n", 36 | " '1236',\n", 37 | " '1256',\n", 38 | " '1301',\n", 39 | " '1303',\n", 40 | " '1304',\n", 41 | " '1305',\n", 42 | " '1307',\n", 43 | " '1308',\n", 44 | " '1309',\n", 45 | " '1310',\n", 46 | " '1312',\n", 47 | " '1313',\n", 48 | " '1314',\n", 49 | " '1315',\n", 50 | " '1316',\n", 51 | " '1319',\n", 52 | " '1321',\n", 53 | " '1323',\n", 54 | " '1324',\n", 55 | " '1325',\n", 56 | " '1326',\n", 57 | " '1337',\n", 58 | " '1338',\n", 59 | " '1339',\n", 60 | " '1340',\n", 61 | " '1341',\n", 62 | " '1342',\n", 63 | " '1402',\n", 64 | " '1409',\n", 65 | " '1410',\n", 66 | " '1413',\n", 67 | " '1414',\n", 68 | " '1416',\n", 69 | " '1417',\n", 70 | " '1418',\n", 71 | " '1419',\n", 72 | " '1423',\n", 73 | " '1432',\n", 74 | " '1434',\n", 75 | " '1435',\n", 76 | " '1436',\n", 77 | " '1437',\n", 78 | " '1438',\n", 79 | " '1439',\n", 80 | " '1440',\n", 81 | " '1441',\n", 82 | " '1442',\n", 83 | " '1443',\n", 84 | " '1444',\n", 85 | " '1445',\n", 86 | " '1446',\n", 87 | " '1447',\n", 88 | " '1449',\n", 89 | " '1451',\n", 90 | " '1452',\n", 91 | " '1453',\n", 92 | " '1454',\n", 93 | " '1455',\n", 94 | " '1456',\n", 95 | " '1457',\n", 96 | " '1459',\n", 97 | " '1460',\n", 98 | " '1463',\n", 99 | " '1464',\n", 100 | " '1465',\n", 101 | " '1466',\n", 102 | " '1467',\n", 103 | " '1468',\n", 104 | " '1470',\n", 105 | " '1471',\n", 106 | " '1472',\n", 107 | " '1473',\n", 108 | " '1474',\n", 109 | " '1475',\n", 110 | " '1476',\n", 111 | " '1477',\n", 112 | " '1503',\n", 113 | " '1504',\n", 114 | " '1506',\n", 115 | " '1512',\n", 116 | " '1513',\n", 117 | " '1514',\n", 118 | " '1515',\n", 119 | " '1516',\n", 120 | " '1517',\n", 121 | " '1519',\n", 122 | " '1521',\n", 123 | " '1522',\n", 124 | " '1524',\n", 125 | " '1525',\n", 126 | " '1526',\n", 127 | " '1527',\n", 128 | " '1528',\n", 129 | " '1529',\n", 130 | " '1530',\n", 131 | " '1531',\n", 132 | " '1532',\n", 133 | " '1533',\n", 134 | " '1535',\n", 135 | " '1536',\n", 136 | " '1537',\n", 137 | " '1538',\n", 138 | " '1539',\n", 139 | " '1540',\n", 140 | " '1541',\n", 141 | " '1558',\n", 142 | " '1560',\n", 143 | " '1568',\n", 144 | " '1582',\n", 145 | " '1583',\n", 146 | " '1587',\n", 147 | " '1589',\n", 148 | " '1590',\n", 149 | " '1597',\n", 150 | " '1598',\n", 151 | " '1603',\n", 152 | " '1604',\n", 153 | " '1605',\n", 154 | " '1608',\n", 155 | " '1609',\n", 156 | " '1611',\n", 157 | " '1612',\n", 158 | " '1614',\n", 159 | " '1615',\n", 160 | " '1616',\n", 161 | " '1617',\n", 162 | " '1618',\n", 163 | " '1626',\n", 164 | " '1701',\n", 165 | " '1702',\n", 166 | " '1707',\n", 167 | " '1708',\n", 168 | " '1709',\n", 169 | " '1710',\n", 170 | " '1711',\n", 171 | " '1712',\n", 172 | " '1713',\n", 173 | " '1714',\n", 174 | " '1717',\n", 175 | " '1718',\n", 176 | " '1720',\n", 177 | " '1721',\n", 178 | " '1722',\n", 179 | " '1723',\n", 180 | " '1725',\n", 181 | " '1726',\n", 182 | " '1727',\n", 183 | " '1730',\n", 184 | " '1731',\n", 185 | " '1732',\n", 186 | " '1733',\n", 187 | " '1734',\n", 188 | " '1735',\n", 189 | " '1736',\n", 190 | " '1737',\n", 191 | " '1752',\n", 192 | " '1760',\n", 193 | " '1762',\n", 194 | " '1773',\n", 195 | " '1776',\n", 196 | " '1783',\n", 197 | " '1786',\n", 198 | " '1789',\n", 199 | " '1795',\n", 200 | " '1802',\n", 201 | " '1805',\n", 202 | " '1806',\n", 203 | " '1808',\n", 204 | " '1809',\n", 205 | " '1810',\n", 206 | " '1817',\n", 207 | " '1903',\n", 208 | " '1904',\n", 209 | " '1905',\n", 210 | " '1906',\n", 211 | " '1907',\n", 212 | " '1909',\n", 213 | " '2002',\n", 214 | " '2006',\n", 215 | " '2007',\n", 216 | " '2008',\n", 217 | " '2009',\n", 218 | " '2010',\n", 219 | " '2012',\n", 220 | " '2013',\n", 221 | " '2014',\n", 222 | " '2015',\n", 223 | " '2017',\n", 224 | " '2020',\n", 225 | " '2022',\n", 226 | " '2023',\n", 227 | " '2024',\n", 228 | " '2025',\n", 229 | " '2027',\n", 230 | " '2028',\n", 231 | " '2029',\n", 232 | " '2030',\n", 233 | " '2031',\n", 234 | " '2032',\n", 235 | " '2033',\n", 236 | " '2034',\n", 237 | " '2038',\n", 238 | " '2049',\n", 239 | " '2059',\n", 240 | " '2062',\n", 241 | " '2069',\n", 242 | " '2101',\n", 243 | " '2102',\n", 244 | " '2103',\n", 245 | " '2104',\n", 246 | " '2105',\n", 247 | " '2106',\n", 248 | " '2107',\n", 249 | " '2108',\n", 250 | " '2109',\n", 251 | " '2114',\n", 252 | " '2115',\n", 253 | " '2201',\n", 254 | " '2204',\n", 255 | " '2206',\n", 256 | " '2207',\n", 257 | " '2208',\n", 258 | " '2211',\n", 259 | " '2227',\n", 260 | " '2228',\n", 261 | " '2231',\n", 262 | " '2233',\n", 263 | " '2236',\n", 264 | " '2239',\n", 265 | " '2241',\n", 266 | " '2243',\n", 267 | " '2247',\n", 268 | " '2250',\n", 269 | " '2301',\n", 270 | " '2302',\n", 271 | " '2303',\n", 272 | " '2305',\n", 273 | " '2308',\n", 274 | " '2312',\n", 275 | " '2313',\n", 276 | " '2314',\n", 277 | " '2316',\n", 278 | " '2317',\n", 279 | " '2321',\n", 280 | " '2323',\n", 281 | " '2324',\n", 282 | " '2327',\n", 283 | " '2328',\n", 284 | " '2329',\n", 285 | " '2330',\n", 286 | " '2331',\n", 287 | " '2332',\n", 288 | " '2337',\n", 289 | " '2338',\n", 290 | " '2340',\n", 291 | " '2342',\n", 292 | " '2344',\n", 293 | " '2345',\n", 294 | " '2347',\n", 295 | " '2348',\n", 296 | " '2349',\n", 297 | " '2351',\n", 298 | " '2352',\n", 299 | " '2353',\n", 300 | " '2354',\n", 301 | " '2355',\n", 302 | " '2356',\n", 303 | " '2357',\n", 304 | " '2358',\n", 305 | " '2359',\n", 306 | " '2360',\n", 307 | " '2362',\n", 308 | " '2363',\n", 309 | " '2364',\n", 310 | " '2365',\n", 311 | " '2367',\n", 312 | " '2368',\n", 313 | " '2369',\n", 314 | " '2371',\n", 315 | " '2373',\n", 316 | " '2374',\n", 317 | " '2375',\n", 318 | " '2376',\n", 319 | " '2377',\n", 320 | " '2379',\n", 321 | " '2380',\n", 322 | " '2382',\n", 323 | " '2383',\n", 324 | " '2385',\n", 325 | " '2387',\n", 326 | " '2388',\n", 327 | " '2390',\n", 328 | " '2392',\n", 329 | " '2393',\n", 330 | " '2395',\n", 331 | " '2397',\n", 332 | " '2399',\n", 333 | " '2401',\n", 334 | " '2402',\n", 335 | " '2404',\n", 336 | " '2405',\n", 337 | " '2406',\n", 338 | " '2408',\n", 339 | " '2409',\n", 340 | " '2412',\n", 341 | " '2413',\n", 342 | " '2414',\n", 343 | " '2415',\n", 344 | " '2417',\n", 345 | " '2419',\n", 346 | " '2420',\n", 347 | " '2421',\n", 348 | " '2423',\n", 349 | " '2424',\n", 350 | " '2425',\n", 351 | " '2426',\n", 352 | " '2427',\n", 353 | " '2428',\n", 354 | " '2429',\n", 355 | " '2430',\n", 356 | " '2431',\n", 357 | " '2433',\n", 358 | " '2434',\n", 359 | " '2436',\n", 360 | " '2438',\n", 361 | " '2439',\n", 362 | " '2440',\n", 363 | " '2441',\n", 364 | " '2442',\n", 365 | " '2443',\n", 366 | " '2444',\n", 367 | " '2449',\n", 368 | " '2450',\n", 369 | " '2451',\n", 370 | " '2453',\n", 371 | " '2454',\n", 372 | " '2455',\n", 373 | " '2457',\n", 374 | " '2458',\n", 375 | " '2459',\n", 376 | " '2460',\n", 377 | " '2461',\n", 378 | " '2462',\n", 379 | " '2464',\n", 380 | " '2465',\n", 381 | " '2466',\n", 382 | " '2467',\n", 383 | " '2468',\n", 384 | " '2471',\n", 385 | " '2472',\n", 386 | " '2474',\n", 387 | " '2476',\n", 388 | " '2477',\n", 389 | " '2478',\n", 390 | " '2480',\n", 391 | " '2481',\n", 392 | " '2482',\n", 393 | " '2483',\n", 394 | " '2484',\n", 395 | " '2485',\n", 396 | " '2486',\n", 397 | " '2488',\n", 398 | " '2489',\n", 399 | " '2491',\n", 400 | " '2492',\n", 401 | " '2493',\n", 402 | " '2495',\n", 403 | " '2496',\n", 404 | " '2497',\n", 405 | " '2498',\n", 406 | " '2501',\n", 407 | " '2504',\n", 408 | " '2505',\n", 409 | " '2506',\n", 410 | " '2509',\n", 411 | " '2511',\n", 412 | " '2514',\n", 413 | " '2515',\n", 414 | " '2516',\n", 415 | " '2520',\n", 416 | " '2524',\n", 417 | " '2527',\n", 418 | " '2528',\n", 419 | " '2530',\n", 420 | " '2534',\n", 421 | " '2535',\n", 422 | " '2536',\n", 423 | " '2537',\n", 424 | " '2538',\n", 425 | " '2539',\n", 426 | " '2540',\n", 427 | " '2542',\n", 428 | " '2543',\n", 429 | " '2545',\n", 430 | " '2546',\n", 431 | " '2547',\n", 432 | " '2548',\n", 433 | " '2597',\n", 434 | " '2601',\n", 435 | " '2603',\n", 436 | " '2605',\n", 437 | " '2606',\n", 438 | " '2607',\n", 439 | " '2608',\n", 440 | " '2609',\n", 441 | " '2610',\n", 442 | " '2611',\n", 443 | " '2612',\n", 444 | " '2613',\n", 445 | " '2614',\n", 446 | " '2615',\n", 447 | " '2616',\n", 448 | " '2617',\n", 449 | " '2618',\n", 450 | " '2630',\n", 451 | " '2633',\n", 452 | " '2634',\n", 453 | " '2636',\n", 454 | " '2637',\n", 455 | " '2642',\n", 456 | " '2645',\n", 457 | " '2701',\n", 458 | " '2702',\n", 459 | " '2704',\n", 460 | " '2705',\n", 461 | " '2706',\n", 462 | " '2707',\n", 463 | " '2712',\n", 464 | " '2722',\n", 465 | " '2723',\n", 466 | " '2727',\n", 467 | " '2731',\n", 468 | " '2739',\n", 469 | " '2748',\n", 470 | " '2753',\n", 471 | " '2801',\n", 472 | " '2809',\n", 473 | " '2812',\n", 474 | " '2816',\n", 475 | " '2820',\n", 476 | " '2832',\n", 477 | " '2834',\n", 478 | " '2836',\n", 479 | " '2838',\n", 480 | " '2845',\n", 481 | " '2849',\n", 482 | " '2850',\n", 483 | " '2851',\n", 484 | " '2852',\n", 485 | " '2855',\n", 486 | " '2867',\n", 487 | " '2880',\n", 488 | " '2881',\n", 489 | " '2882',\n", 490 | " '2883',\n", 491 | " '2884',\n", 492 | " '2885',\n", 493 | " '2886',\n", 494 | " '2887',\n", 495 | " '2888',\n", 496 | " '2889',\n", 497 | " '2890',\n", 498 | " '2891',\n", 499 | " '2892',\n", 500 | " '2897',\n", 501 | " '2901',\n", 502 | " '2903',\n", 503 | " '2904',\n", 504 | " '2905',\n", 505 | " '2906',\n", 506 | " '2908',\n", 507 | " '2910',\n", 508 | " '2911',\n", 509 | " '2912',\n", 510 | " '2913',\n", 511 | " '2915',\n", 512 | " '2923',\n", 513 | " '2929',\n", 514 | " '2939',\n", 515 | " '2945',\n", 516 | " '3002',\n", 517 | " '3003',\n", 518 | " '3004',\n", 519 | " '3005',\n", 520 | " '3006',\n", 521 | " '3008',\n", 522 | " '3010',\n", 523 | " '3011',\n", 524 | " '3013',\n", 525 | " '3014',\n", 526 | " '3015',\n", 527 | " '3016',\n", 528 | " '3017',\n", 529 | " '3018',\n", 530 | " '3019',\n", 531 | " '3021',\n", 532 | " '3022',\n", 533 | " '3023',\n", 534 | " '3024',\n", 535 | " '3025',\n", 536 | " '3026',\n", 537 | " '3027',\n", 538 | " '3028',\n", 539 | " '3029',\n", 540 | " '3030',\n", 541 | " '3031',\n", 542 | " '3032',\n", 543 | " '3033',\n", 544 | " '3034',\n", 545 | " '3035',\n", 546 | " '3036',\n", 547 | " '3037',\n", 548 | " '3038',\n", 549 | " '3040',\n", 550 | " '3041',\n", 551 | " '3042',\n", 552 | " '3043',\n", 553 | " '3044',\n", 554 | " '3045',\n", 555 | " '3046',\n", 556 | " '3047',\n", 557 | " '3048',\n", 558 | " '3049',\n", 559 | " '3050',\n", 560 | " '3051',\n", 561 | " '3052',\n", 562 | " '3054',\n", 563 | " '3055',\n", 564 | " '3056',\n", 565 | " '3057',\n", 566 | " '3058',\n", 567 | " '3059',\n", 568 | " '3060',\n", 569 | " '3062',\n", 570 | " '3090',\n", 571 | " '3092',\n", 572 | " '3094',\n", 573 | " '3130',\n", 574 | " '3138',\n", 575 | " '3149',\n", 576 | " '3164',\n", 577 | " '3167',\n", 578 | " '3189',\n", 579 | " '3209',\n", 580 | " '3229',\n", 581 | " '3231',\n", 582 | " '3257',\n", 583 | " '3266',\n", 584 | " '3296',\n", 585 | " '3305',\n", 586 | " '3308',\n", 587 | " '3311',\n", 588 | " '3312',\n", 589 | " '3321',\n", 590 | " '3338',\n", 591 | " '3346',\n", 592 | " '3356',\n", 593 | " '3376',\n", 594 | " '3380',\n", 595 | " '3406',\n", 596 | " '3413',\n", 597 | " '3416',\n", 598 | " '3419',\n", 599 | " '3432',\n", 600 | " '3437',\n", 601 | " '3443',\n", 602 | " '3447',\n", 603 | " '3450',\n", 604 | " '3454',\n", 605 | " '3481',\n", 606 | " '3494',\n", 607 | " '3501',\n", 608 | " '3504',\n", 609 | " '3515',\n", 610 | " '3518',\n", 611 | " '3528',\n", 612 | " '3530',\n", 613 | " '3532',\n", 614 | " '3533',\n", 615 | " '3535',\n", 616 | " '3536',\n", 617 | " '3543',\n", 618 | " '3545',\n", 619 | " '3550',\n", 620 | " '3557',\n", 621 | " '3563',\n", 622 | " '3576',\n", 623 | " '3583',\n", 624 | " '3588',\n", 625 | " '3591',\n", 626 | " '3592',\n", 627 | " '3593',\n", 628 | " '3596',\n", 629 | " '3605',\n", 630 | " '3607',\n", 631 | " '3617',\n", 632 | " '3622',\n", 633 | " '3645',\n", 634 | " '3652',\n", 635 | " '3653',\n", 636 | " '3661',\n", 637 | " '3665',\n", 638 | " '3669',\n", 639 | " '3673',\n", 640 | " '3679',\n", 641 | " '3682',\n", 642 | " '3686',\n", 643 | " '3694',\n", 644 | " '3701',\n", 645 | " '3702',\n", 646 | " '3703',\n", 647 | " '3704',\n", 648 | " '3705',\n", 649 | " '3706',\n", 650 | " '3708',\n", 651 | " '3711',\n", 652 | " '3712',\n", 653 | " '3714',\n", 654 | " '3715',\n", 655 | " '4104',\n", 656 | " '4106',\n", 657 | " '4108',\n", 658 | " '4119',\n", 659 | " '4133',\n", 660 | " '4137',\n", 661 | " '4142',\n", 662 | " '4148 ',\n", 663 | " '4155',\n", 664 | " '4164',\n", 665 | " '4190',\n", 666 | " '4306',\n", 667 | " '4414',\n", 668 | " '4426',\n", 669 | " '4438',\n", 670 | " '4439',\n", 671 | " '4440',\n", 672 | " '4526',\n", 673 | " '4532',\n", 674 | " '4536',\n", 675 | " '4540',\n", 676 | " '4545',\n", 677 | " '4551',\n", 678 | " '4552',\n", 679 | " '4555',\n", 680 | " '4557',\n", 681 | " '4560',\n", 682 | " '4562',\n", 683 | " '4564',\n", 684 | " '4566',\n", 685 | " '4571',\n", 686 | " '4572',\n", 687 | " '4576',\n", 688 | " '4581',\n", 689 | " '4583',\n", 690 | " '4720',\n", 691 | " '4722',\n", 692 | " '4737',\n", 693 | " '4739',\n", 694 | " '4746',\n", 695 | " '4755',\n", 696 | " '4763',\n", 697 | " '4764',\n", 698 | " '4766',\n", 699 | " '4770',\n", 700 | " '4807',\n", 701 | " '4904',\n", 702 | " '4906',\n", 703 | " '4912',\n", 704 | " '4915',\n", 705 | " '4916',\n", 706 | " '4919',\n", 707 | " '4927',\n", 708 | " '4930',\n", 709 | " '4934',\n", 710 | " '4935',\n", 711 | " '4938',\n", 712 | " '4942',\n", 713 | " '4943',\n", 714 | " '4952',\n", 715 | " '4956',\n", 716 | " '4958',\n", 717 | " '4960',\n", 718 | " '4961',\n", 719 | " '4967',\n", 720 | " '4968',\n", 721 | " '4976',\n", 722 | " '4977',\n", 723 | " '4989',\n", 724 | " '4994',\n", 725 | " '4999',\n", 726 | " '5007',\n", 727 | " '5203',\n", 728 | " '5215',\n", 729 | " '5222',\n", 730 | " '5225',\n", 731 | " '5234',\n", 732 | " '5243',\n", 733 | " '5244',\n", 734 | " '5258',\n", 735 | " '5269',\n", 736 | " '5283',\n", 737 | " '5284',\n", 738 | " '5285',\n", 739 | " '5288',\n", 740 | " '5306',\n", 741 | " '5388',\n", 742 | " '5434',\n", 743 | " '5469',\n", 744 | " '5471',\n", 745 | " '5484',\n", 746 | " '5515',\n", 747 | " '5519',\n", 748 | " '5521',\n", 749 | " '5522',\n", 750 | " '5525',\n", 751 | " '5531',\n", 752 | " '5533',\n", 753 | " '5534',\n", 754 | " '5538',\n", 755 | " '5546',\n", 756 | " '5607',\n", 757 | " '5608',\n", 758 | " '5706',\n", 759 | " '5871',\n", 760 | " '5876',\n", 761 | " '5880',\n", 762 | " '5906',\n", 763 | " '5907',\n", 764 | " '6005',\n", 765 | " '6024',\n", 766 | " '6108',\n", 767 | " '6112',\n", 768 | " '6115',\n", 769 | " '6116',\n", 770 | " '6117',\n", 771 | " '6120',\n", 772 | " '6128',\n", 773 | " '6133',\n", 774 | " '6136',\n", 775 | " '6139',\n", 776 | " '6141',\n", 777 | " '6142',\n", 778 | " '6152',\n", 779 | " '6153',\n", 780 | " '6155',\n", 781 | " '6164',\n", 782 | " '6165',\n", 783 | " '6166',\n", 784 | " '6168',\n", 785 | " '6176',\n", 786 | " '6177',\n", 787 | " '6183',\n", 788 | " '6184',\n", 789 | " '6189',\n", 790 | " '6191',\n", 791 | " '6192',\n", 792 | " '6196',\n", 793 | " '6197',\n", 794 | " '6201',\n", 795 | " '6202',\n", 796 | " '6205',\n", 797 | " '6206',\n", 798 | " '6209',\n", 799 | " '6213',\n", 800 | " '6214',\n", 801 | " '6215',\n", 802 | " '6216',\n", 803 | " '6224',\n", 804 | " '6225',\n", 805 | " '6226',\n", 806 | " '6230',\n", 807 | " '6235',\n", 808 | " '6239',\n", 809 | " '6243',\n", 810 | " '6257',\n", 811 | " '6269',\n", 812 | " '6271',\n", 813 | " '6277',\n", 814 | " '6278',\n", 815 | " '6281',\n", 816 | " '6282',\n", 817 | " '6283',\n", 818 | " '6285',\n", 819 | " '6288',\n", 820 | " '6405',\n", 821 | " '6409',\n", 822 | " '6412',\n", 823 | " '6414',\n", 824 | " '6415',\n", 825 | " '6416',\n", 826 | " '6426',\n", 827 | " '6431',\n", 828 | " '6438',\n", 829 | " '6442',\n", 830 | " '6443',\n", 831 | " '6449',\n", 832 | " '6451',\n", 833 | " '6456',\n", 834 | " '6464',\n", 835 | " '6477',\n", 836 | " '6491',\n", 837 | " '6504',\n", 838 | " '6505',\n", 839 | " '6515',\n", 840 | " '6525',\n", 841 | " '6531',\n", 842 | " '6533',\n", 843 | " '6541',\n", 844 | " '6550',\n", 845 | " '6552',\n", 846 | " '6558',\n", 847 | " '6573',\n", 848 | " '6579',\n", 849 | " '6581',\n", 850 | " '6582',\n", 851 | " '6585',\n", 852 | " '6591',\n", 853 | " '6592',\n", 854 | " '6598',\n", 855 | " '6605',\n", 856 | " '6606',\n", 857 | " '6625',\n", 858 | " '6641',\n", 859 | " '6655',\n", 860 | " '6666',\n", 861 | " '6668',\n", 862 | " '6669',\n", 863 | " '6670',\n", 864 | " '6671',\n", 865 | " '6672',\n", 866 | " '6674',\n", 867 | " '6689',\n", 868 | " '6691',\n", 869 | " '6695',\n", 870 | " '6698',\n", 871 | " '6706',\n", 872 | " '6715',\n", 873 | " '6719',\n", 874 | " '6743',\n", 875 | " '6753',\n", 876 | " '6754',\n", 877 | " '6756',\n", 878 | " '6768',\n", 879 | " '6770',\n", 880 | " '6776',\n", 881 | " '6781',\n", 882 | " '6782',\n", 883 | " '6789',\n", 884 | " '6790',\n", 885 | " '6792',\n", 886 | " '6796',\n", 887 | " '6799',\n", 888 | " '6806',\n", 889 | " '6807',\n", 890 | " '6830',\n", 891 | " '6834',\n", 892 | " '6835',\n", 893 | " '6861',\n", 894 | " '6863',\n", 895 | " '8011',\n", 896 | " '8016',\n", 897 | " '8021',\n", 898 | " '8028',\n", 899 | " '8033',\n", 900 | " '8039',\n", 901 | " '8046',\n", 902 | " '8070',\n", 903 | " '8072',\n", 904 | " '8081',\n", 905 | " '8101',\n", 906 | " '8103',\n", 907 | " '8104',\n", 908 | " '8105',\n", 909 | " '8110',\n", 910 | " '8112',\n", 911 | " '8114',\n", 912 | " '8131',\n", 913 | " '8150',\n", 914 | " '8163',\n", 915 | " '8201',\n", 916 | " '8210',\n", 917 | " '8213',\n", 918 | " '8215',\n", 919 | " '8222',\n", 920 | " '8249',\n", 921 | " '8261',\n", 922 | " '8271',\n", 923 | " '8341',\n", 924 | " '8367',\n", 925 | " '8374',\n", 926 | " '8404',\n", 927 | " '8411',\n", 928 | " '8422',\n", 929 | " '8429',\n", 930 | " '8438',\n", 931 | " '8442',\n", 932 | " '8443',\n", 933 | " '8454',\n", 934 | " '8462',\n", 935 | " '8463',\n", 936 | " '8464',\n", 937 | " '8466',\n", 938 | " '8467',\n", 939 | " '8473',\n", 940 | " '8478',\n", 941 | " '8481',\n", 942 | " '8482',\n", 943 | " '8488',\n", 944 | " '8499',\n", 945 | " '8926',\n", 946 | " '8940',\n", 947 | " '8996',\n", 948 | " '9802',\n", 949 | " '9902',\n", 950 | " '9904',\n", 951 | " '9905',\n", 952 | " '9906',\n", 953 | " '9907',\n", 954 | " '9908',\n", 955 | " '9910',\n", 956 | " '9911',\n", 957 | " '9912',\n", 958 | " '9914',\n", 959 | " '9917',\n", 960 | " '9918',\n", 961 | " '9919',\n", 962 | " '9921',\n", 963 | " '9924',\n", 964 | " '9925',\n", 965 | " '9926',\n", 966 | " '9927',\n", 967 | " '9928',\n", 968 | " '9929',\n", 969 | " '9930',\n", 970 | " '9931',\n", 971 | " '9933',\n", 972 | " '9934',\n", 973 | " '9935',\n", 974 | " '9937',\n", 975 | " '9938',\n", 976 | " '9939',\n", 977 | " '9940',\n", 978 | " '9941',\n", 979 | " '9942',\n", 980 | " '9943',\n", 981 | " '9944',\n", 982 | " '9945',\n", 983 | " '9946',\n", 984 | " '9955',\n", 985 | " '9958']" 986 | ] 987 | }, 988 | "metadata": {}, 989 | "output_type": "display_data" 990 | }, 991 | { 992 | "data": { 993 | "text/plain": [ 994 | "['台泥',\n", 995 | " '亞泥',\n", 996 | " '嘉泥',\n", 997 | " '環泥',\n", 998 | " '幸福',\n", 999 | " '信大',\n", 1000 | " '東泥',\n", 1001 | " '味全',\n", 1002 | " '味王',\n", 1003 | " '大成',\n", 1004 | " '大飲',\n", 1005 | " '卜蜂',\n", 1006 | " '統一',\n", 1007 | " '愛之味',\n", 1008 | " '泰山',\n", 1009 | " '福壽',\n", 1010 | " '台榮',\n", 1011 | " '福懋油',\n", 1012 | " '佳格',\n", 1013 | " '聯華',\n", 1014 | " '聯華食',\n", 1015 | " '大統益',\n", 1016 | " '天仁',\n", 1017 | " '黑松',\n", 1018 | " '興泰',\n", 1019 | " '宏亞',\n", 1020 | " '鮮活果汁-KY',\n", 1021 | " '台塑',\n", 1022 | " '南亞',\n", 1023 | " '台聚',\n", 1024 | " '華夏',\n", 1025 | " '三芳',\n", 1026 | " '亞聚',\n", 1027 | " '台達化',\n", 1028 | " '台苯',\n", 1029 | " '國喬',\n", 1030 | " '聯成',\n", 1031 | " '中石化',\n", 1032 | " '達新',\n", 1033 | " '上曜',\n", 1034 | " '東陽',\n", 1035 | " '大洋',\n", 1036 | " '永裕',\n", 1037 | " '地球',\n", 1038 | " '恆大',\n", 1039 | " '台化',\n", 1040 | " '再生-KY',\n", 1041 | " '廣華-KY',\n", 1042 | " '昭輝',\n", 1043 | " '勝悅-KY',\n", 1044 | " '富林-KY',\n", 1045 | " '八貫',\n", 1046 | " '遠東新',\n", 1047 | " '新纖',\n", 1048 | " '南染',\n", 1049 | " '宏洲',\n", 1050 | " '東和',\n", 1051 | " '廣豐',\n", 1052 | " '嘉裕',\n", 1053 | " '東華',\n", 1054 | " '新紡',\n", 1055 | " '利華',\n", 1056 | " '大魯閣',\n", 1057 | " '福懋',\n", 1058 | " '中福',\n", 1059 | " '華友聯',\n", 1060 | " '勤益控',\n", 1061 | " '三地開發',\n", 1062 | " '雋揚',\n", 1063 | " '南紡',\n", 1064 | " '大東',\n", 1065 | " '名軒',\n", 1066 | " '立益物流',\n", 1067 | " '力麗',\n", 1068 | " '大宇',\n", 1069 | " '宏和',\n", 1070 | " '力鵬',\n", 1071 | " '佳和',\n", 1072 | " '年興',\n", 1073 | " '宏益',\n", 1074 | " '大將',\n", 1075 | " '台富',\n", 1076 | " '集盛',\n", 1077 | " '怡華',\n", 1078 | " '宜進',\n", 1079 | " '聯發',\n", 1080 | " '宏遠',\n", 1081 | " '強盛',\n", 1082 | " '得力',\n", 1083 | " '偉全',\n", 1084 | " '聚隆',\n", 1085 | " '南緯',\n", 1086 | " '昶和',\n", 1087 | " '大統新創',\n", 1088 | " '首利',\n", 1089 | " '三洋實業',\n", 1090 | " '台南',\n", 1091 | " '弘裕',\n", 1092 | " '業旺',\n", 1093 | " '儒鴻',\n", 1094 | " '聚陽',\n", 1095 | " '士電',\n", 1096 | " '東元',\n", 1097 | " '正道',\n", 1098 | " '瑞利',\n", 1099 | " '中興電',\n", 1100 | " '亞力',\n", 1101 | " '力山',\n", 1102 | " '川飛',\n", 1103 | " '利奇',\n", 1104 | " '華城',\n", 1105 | " '大億',\n", 1106 | " '堤維西',\n", 1107 | " '耿鼎',\n", 1108 | " '江申',\n", 1109 | " '日馳',\n", 1110 | " '鑽全',\n", 1111 | " '恩德',\n", 1112 | " '樂事綠能',\n", 1113 | " '亞崴',\n", 1114 | " '高林股',\n", 1115 | " '勤美',\n", 1116 | " '車王電',\n", 1117 | " '中宇',\n", 1118 | " '和大',\n", 1119 | " '廣隆',\n", 1120 | " '正峰',\n", 1121 | " '巨庭',\n", 1122 | " '喬福',\n", 1123 | " '錩泰',\n", 1124 | " '伸興',\n", 1125 | " '中砂',\n", 1126 | " '倉佑',\n", 1127 | " '信錦',\n", 1128 | " '程泰',\n", 1129 | " '吉茂',\n", 1130 | " '永冠-KY',\n", 1131 | " '亞德客-KY',\n", 1132 | " '直得',\n", 1133 | " '岱宇',\n", 1134 | " '華電',\n", 1135 | " '聲寶',\n", 1136 | " '華新',\n", 1137 | " '華榮',\n", 1138 | " '大亞',\n", 1139 | " '中電',\n", 1140 | " '宏泰',\n", 1141 | " '三洋電',\n", 1142 | " '大山',\n", 1143 | " '億泰',\n", 1144 | " '榮星',\n", 1145 | " '合機',\n", 1146 | " '艾美特-KY',\n", 1147 | " '中化',\n", 1148 | " '南僑',\n", 1149 | " '葡萄王',\n", 1150 | " '東鹼',\n", 1151 | " '和益',\n", 1152 | " '東聯',\n", 1153 | " '永光',\n", 1154 | " '興農',\n", 1155 | " '國化',\n", 1156 | " '和桐',\n", 1157 | " '長興',\n", 1158 | " '中纖',\n", 1159 | " '生達',\n", 1160 | " '三晃',\n", 1161 | " '台肥',\n", 1162 | " '中碳',\n", 1163 | " '元禎',\n", 1164 | " '永記',\n", 1165 | " '中華化',\n", 1166 | " '花仙子',\n", 1167 | " '美吾華',\n", 1168 | " '毛寶',\n", 1169 | " '五鼎',\n", 1170 | " '杏輝',\n", 1171 | " '日勝化',\n", 1172 | " '喬山',\n", 1173 | " '臺鹽',\n", 1174 | " '南光',\n", 1175 | " '寶齡富錦',\n", 1176 | " '中化生',\n", 1177 | " '勝一',\n", 1178 | " '展宇',\n", 1179 | " '和康生',\n", 1180 | " '科妍',\n", 1181 | " '神隆',\n", 1182 | " '美時',\n", 1183 | " '台玻',\n", 1184 | " '寶徠',\n", 1185 | " '冠軍',\n", 1186 | " '潤隆',\n", 1187 | " '中釉',\n", 1188 | " '和成',\n", 1189 | " '凱撒衛',\n", 1190 | " '士紙',\n", 1191 | " '正隆',\n", 1192 | " '華紙',\n", 1193 | " '寶隆',\n", 1194 | " '永豐餘',\n", 1195 | " '榮成',\n", 1196 | " '中鋼',\n", 1197 | " '東和鋼鐵',\n", 1198 | " '燁興',\n", 1199 | " '高興昌',\n", 1200 | " '第一銅',\n", 1201 | " '春源',\n", 1202 | " '春雨',\n", 1203 | " '中鋼構',\n", 1204 | " '中鴻',\n", 1205 | " '豐興',\n", 1206 | " '官田鋼',\n", 1207 | " '美亞',\n", 1208 | " '聚亨',\n", 1209 | " '燁輝',\n", 1210 | " '志聯',\n", 1211 | " '千興',\n", 1212 | " '大成鋼',\n", 1213 | " '威致',\n", 1214 | " '盛餘',\n", 1215 | " '彰源',\n", 1216 | " '新光鋼',\n", 1217 | " '新鋼',\n", 1218 | " '佳大',\n", 1219 | " '允強',\n", 1220 | " '海光',\n", 1221 | " '上銀',\n", 1222 | " '川湖',\n", 1223 | " '橋椿',\n", 1224 | " '運錩',\n", 1225 | " '南港',\n", 1226 | " '泰豐',\n", 1227 | " '台橡',\n", 1228 | " '國際中橡',\n", 1229 | " '正新',\n", 1230 | " '建大',\n", 1231 | " '厚生',\n", 1232 | " '南帝',\n", 1233 | " '華豐',\n", 1234 | " '鑫永銓',\n", 1235 | " '六暉-KY',\n", 1236 | " '裕隆',\n", 1237 | " '中華',\n", 1238 | " '三陽工業',\n", 1239 | " '和泰車',\n", 1240 | " '台船',\n", 1241 | " '長榮鋼',\n", 1242 | " '裕日車',\n", 1243 | " '劍麟',\n", 1244 | " '為升',\n", 1245 | " '宇隆',\n", 1246 | " '百達-KY',\n", 1247 | " '英利-KY',\n", 1248 | " '艾姆勒',\n", 1249 | " '宏旭-KY',\n", 1250 | " '汎德永業',\n", 1251 | " 'IKKA-KY',\n", 1252 | " '光寶科',\n", 1253 | " '麗正',\n", 1254 | " '聯電',\n", 1255 | " '全友',\n", 1256 | " '台達電',\n", 1257 | " '金寶',\n", 1258 | " '華通',\n", 1259 | " '台揚',\n", 1260 | " '楠梓電',\n", 1261 | " '鴻海',\n", 1262 | " '東訊',\n", 1263 | " '中環',\n", 1264 | " '仁寶',\n", 1265 | " '國巨',\n", 1266 | " '廣宇',\n", 1267 | " '華泰',\n", 1268 | " '台積電',\n", 1269 | " '精英',\n", 1270 | " '友訊',\n", 1271 | " '旺宏',\n", 1272 | " '光罩',\n", 1273 | " '台亞',\n", 1274 | " '茂矽',\n", 1275 | " '華邦電',\n", 1276 | " '智邦',\n", 1277 | " '聯強',\n", 1278 | " '海悅',\n", 1279 | " '錸德',\n", 1280 | " '順德',\n", 1281 | " '佳世達',\n", 1282 | " '宏碁',\n", 1283 | " '鴻準',\n", 1284 | " '敬鵬',\n", 1285 | " '英業達',\n", 1286 | " '華碩',\n", 1287 | " '廷鑫',\n", 1288 | " '所羅門',\n", 1289 | " '致茂',\n", 1290 | " '藍天',\n", 1291 | " '矽統',\n", 1292 | " '倫飛',\n", 1293 | " '昆盈',\n", 1294 | " '燿華',\n", 1295 | " '金像電',\n", 1296 | " '菱生',\n", 1297 | " '大同',\n", 1298 | " '震旦行',\n", 1299 | " '佳能',\n", 1300 | " '凱美',\n", 1301 | " '技嘉',\n", 1302 | " '微星',\n", 1303 | " '瑞昱',\n", 1304 | " '虹光',\n", 1305 | " '廣達',\n", 1306 | " '台光電',\n", 1307 | " '群光',\n", 1308 | " '精元',\n", 1309 | " '威盛',\n", 1310 | " '云辰',\n", 1311 | " '正崴',\n", 1312 | " '億光',\n", 1313 | " '研華',\n", 1314 | " '友通',\n", 1315 | " '映泰',\n", 1316 | " '凌陽',\n", 1317 | " '毅嘉',\n", 1318 | " '漢唐',\n", 1319 | " '輔信',\n", 1320 | " '國碩',\n", 1321 | " '南亞科',\n", 1322 | " '友達',\n", 1323 | " '中華電',\n", 1324 | " '環科',\n", 1325 | " '精技',\n", 1326 | " '錩新',\n", 1327 | " '圓剛',\n", 1328 | " '仲琦',\n", 1329 | " '新巨',\n", 1330 | " '建準',\n", 1331 | " '固緯',\n", 1332 | " '隴華',\n", 1333 | " '承啟',\n", 1334 | " '鼎元',\n", 1335 | " '三商電',\n", 1336 | " '興勤',\n", 1337 | " '銘旺科',\n", 1338 | " '燦坤',\n", 1339 | " '聯昌',\n", 1340 | " '互盛電',\n", 1341 | " '統懋',\n", 1342 | " '偉詮電',\n", 1343 | " '翔耀',\n", 1344 | " '美律',\n", 1345 | " '太空梭',\n", 1346 | " '超豐',\n", 1347 | " '新美齊',\n", 1348 | " '昶虹',\n", 1349 | " '兆勁',\n", 1350 | " '京元電子',\n", 1351 | " '神腦',\n", 1352 | " '創見',\n", 1353 | " '凌群',\n", 1354 | " '聯發科',\n", 1355 | " '全新',\n", 1356 | " '飛宏',\n", 1357 | " '義隆',\n", 1358 | " '敦吉',\n", 1359 | " '建通',\n", 1360 | " '光群雷',\n", 1361 | " '良得電',\n", 1362 | " '盟立',\n", 1363 | " '麗臺',\n", 1364 | " '冠西電',\n", 1365 | " '志聖',\n", 1366 | " '華經',\n", 1367 | " '資通',\n", 1368 | " '立隆電',\n", 1369 | " '可成',\n", 1370 | " '鉅祥',\n", 1371 | " '美隆電',\n", 1372 | " '大毅',\n", 1373 | " '敦陽科',\n", 1374 | " '強茂',\n", 1375 | " '連宇',\n", 1376 | " '百容',\n", 1377 | " '希華',\n", 1378 | " '兆赫',\n", 1379 | " '一詮',\n", 1380 | " '漢平',\n", 1381 | " '瑞軒',\n", 1382 | " '吉祥全',\n", 1383 | " '華新科',\n", 1384 | " '揚博',\n", 1385 | " '普安',\n", 1386 | " '卓越',\n", 1387 | " '怡利電',\n", 1388 | " '宏達電',\n", 1389 | " '國建',\n", 1390 | " '國產',\n", 1391 | " '國揚',\n", 1392 | " '太設',\n", 1393 | " '全坤建',\n", 1394 | " '太子',\n", 1395 | " '龍邦',\n", 1396 | " '中工',\n", 1397 | " '新建',\n", 1398 | " '冠德',\n", 1399 | " '京城',\n", 1400 | " '宏璟',\n", 1401 | " '皇普',\n", 1402 | " '華建',\n", 1403 | " '宏盛',\n", 1404 | " '達欣工',\n", 1405 | " '宏普',\n", 1406 | " '聯上發',\n", 1407 | " '基泰',\n", 1408 | " '櫻花建',\n", 1409 | " '愛山林',\n", 1410 | " '興富發',\n", 1411 | " '皇昌',\n", 1412 | " '皇翔',\n", 1413 | " '根基',\n", 1414 | " '日勝生',\n", 1415 | " '華固',\n", 1416 | " '潤弘',\n", 1417 | " '益航',\n", 1418 | " '長榮',\n", 1419 | " '新興',\n", 1420 | " '裕民',\n", 1421 | " '榮運',\n", 1422 | " '嘉里大榮',\n", 1423 | " '陽明',\n", 1424 | " '華航',\n", 1425 | " '志信',\n", 1426 | " '中航',\n", 1427 | " '中櫃',\n", 1428 | " '東森',\n", 1429 | " '萬海',\n", 1430 | " '山隆',\n", 1431 | " '台航',\n", 1432 | " '長榮航',\n", 1433 | " '亞航',\n", 1434 | " '台灣高鐵',\n", 1435 | " '漢翔',\n", 1436 | " '台驊投控',\n", 1437 | " '慧洋-KY',\n", 1438 | " '宅配通',\n", 1439 | " '長榮航太',\n", 1440 | " '萬企',\n", 1441 | " '華園',\n", 1442 | " '國賓',\n", 1443 | " '六福',\n", 1444 | " '第一店',\n", 1445 | " '晶華',\n", 1446 | " '遠雄來',\n", 1447 | " '夏都',\n", 1448 | " '美食-KY',\n", 1449 | " '王品',\n", 1450 | " '雄獅',\n", 1451 | " '寒舍',\n", 1452 | " '雲品',\n", 1453 | " '八方雲集',\n", 1454 | " '彰銀',\n", 1455 | " '京城銀',\n", 1456 | " '台中銀',\n", 1457 | " '旺旺保',\n", 1458 | " '華票',\n", 1459 | " '台產',\n", 1460 | " '臺企銀',\n", 1461 | " '高雄銀',\n", 1462 | " '聯邦銀',\n", 1463 | " '遠東銀',\n", 1464 | " '安泰銀',\n", 1465 | " '新產',\n", 1466 | " '中再保',\n", 1467 | " '第一保',\n", 1468 | " '統一證',\n", 1469 | " '三商壽',\n", 1470 | " '華南金',\n", 1471 | " '富邦金',\n", 1472 | " '國泰金',\n", 1473 | " '開發金',\n", 1474 | " '玉山金',\n", 1475 | " '元大金',\n", 1476 | " '兆豐金',\n", 1477 | " '台新金',\n", 1478 | " '新光金',\n", 1479 | " '國票金',\n", 1480 | " '永豐金',\n", 1481 | " '中信金',\n", 1482 | " '第一金',\n", 1483 | " '王道銀行',\n", 1484 | " '欣欣',\n", 1485 | " '遠百',\n", 1486 | " '匯僑',\n", 1487 | " '三商',\n", 1488 | " '高林',\n", 1489 | " '特力',\n", 1490 | " '統領',\n", 1491 | " '麗嬰房',\n", 1492 | " '統一超',\n", 1493 | " '農林',\n", 1494 | " '潤泰全',\n", 1495 | " '鼎固-KY',\n", 1496 | " '淘帝-KY',\n", 1497 | " '凱羿-KY',\n", 1498 | " '三商家購',\n", 1499 | " '歐格',\n", 1500 | " '健和興',\n", 1501 | " '豐達科',\n", 1502 | " '神基',\n", 1503 | " '晶豪科',\n", 1504 | " '大立光',\n", 1505 | " '華立',\n", 1506 | " '今皓',\n", 1507 | " '晟銘電',\n", 1508 | " '聯陽',\n", 1509 | " '全漢',\n", 1510 | " '嘉晶',\n", 1511 | " '奇鋐',\n", 1512 | " '隆銘綠能',\n", 1513 | " '亞光',\n", 1514 | " '鴻名',\n", 1515 | " '威強電',\n", 1516 | " '信邦',\n", 1517 | " '憶聲',\n", 1518 | " '星通',\n", 1519 | " '禾伸堂',\n", 1520 | " '盛達',\n", 1521 | " '增你強',\n", 1522 | " '零壹',\n", 1523 | " '德律',\n", 1524 | " '佰鴻',\n", 1525 | " '偉訓',\n", 1526 | " '威健',\n", 1527 | " '聯詠',\n", 1528 | " '智原',\n", 1529 | " '文曄',\n", 1530 | " '欣興',\n", 1531 | " '全台',\n", 1532 | " '遠見',\n", 1533 | " '揚智',\n", 1534 | " '晶技',\n", 1535 | " '科風',\n", 1536 | " '健鼎',\n", 1537 | " '台灣大',\n", 1538 | " '建碁',\n", 1539 | " '訊舟',\n", 1540 | " '益登',\n", 1541 | " '和鑫',\n", 1542 | " '鈺德',\n", 1543 | " '力特',\n", 1544 | " '夆典',\n", 1545 | " '立萬利',\n", 1546 | " '蔚華科',\n", 1547 | " '總太',\n", 1548 | " '喬鼎',\n", 1549 | " '立德',\n", 1550 | " '華晶科',\n", 1551 | " '銘異',\n", 1552 | " '建漢',\n", 1553 | " '日電貿',\n", 1554 | " '鴻碩',\n", 1555 | " '聯傑',\n", 1556 | " '一零四',\n", 1557 | " '耀登',\n", 1558 | " '正達',\n", 1559 | " '景岳',\n", 1560 | " '大量',\n", 1561 | " '景碩',\n", 1562 | " '全科',\n", 1563 | " '晟鈦',\n", 1564 | " '緯創',\n", 1565 | " '虹冠電',\n", 1566 | " '昇陽',\n", 1567 | " '勝德',\n", 1568 | " '昇貿',\n", 1569 | " '聯德',\n", 1570 | " '閎暉',\n", 1571 | " '弘憶股',\n", 1572 | " '同泰',\n", 1573 | " '泰碩',\n", 1574 | " '麗清',\n", 1575 | " '奇偶',\n", 1576 | " '新日興',\n", 1577 | " '明泰',\n", 1578 | " '玉晶光',\n", 1579 | " '京鼎',\n", 1580 | " '融程電',\n", 1581 | " '譁裕',\n", 1582 | " '台端',\n", 1583 | " '榮創',\n", 1584 | " '創意',\n", 1585 | " '展達',\n", 1586 | " '聯鈞',\n", 1587 | " '晶睿',\n", 1588 | " '群創',\n", 1589 | " '誠研',\n", 1590 | " '維熹',\n", 1591 | " '揚明光',\n", 1592 | " '華擎',\n", 1593 | " '柏騰',\n", 1594 | " '安馳',\n", 1595 | " '晶相光',\n", 1596 | " '台勝科',\n", 1597 | " '嘉澤',\n", 1598 | " '晶彩科',\n", 1599 | " '誠創',\n", 1600 | " '州巧',\n", 1601 | " '敦泰',\n", 1602 | " '聯穎',\n", 1603 | " '嘉威',\n", 1604 | " '牧德',\n", 1605 | " '聯合再生',\n", 1606 | " '辛耘',\n", 1607 | " '通嘉',\n", 1608 | " '艾笛森',\n", 1609 | " '瑞鼎',\n", 1610 | " '力銘',\n", 1611 | " '智易',\n", 1612 | " '宏致',\n", 1613 | " '谷崧',\n", 1614 | " '碩天',\n", 1615 | " '洋華',\n", 1616 | " '達邁',\n", 1617 | " '精聯',\n", 1618 | " '健策',\n", 1619 | " '世芯-KY',\n", 1620 | " '貿聯-KY',\n", 1621 | " '圓展',\n", 1622 | " 'TPK-KY',\n", 1623 | " '新至陞',\n", 1624 | " '亞太電',\n", 1625 | " '達能',\n", 1626 | " '海華',\n", 1627 | " '大眾控',\n", 1628 | " '大聯大',\n", 1629 | " '欣陸',\n", 1630 | " '合勤控',\n", 1631 | " '永信',\n", 1632 | " '神達',\n", 1633 | " '上緯投控',\n", 1634 | " '日月光投控',\n", 1635 | " '永崴投控',\n", 1636 | " '富采',\n", 1637 | " '定穎投控',\n", 1638 | " '佳醫',\n", 1639 | " '雃博',\n", 1640 | " '懷特',\n", 1641 | " '旭富',\n", 1642 | " '亞諾法',\n", 1643 | " '麗豐-KY',\n", 1644 | " '國光生',\n", 1645 | " '全宇生技-KY',\n", 1646 | " '訊映',\n", 1647 | " '承業醫',\n", 1648 | " '佐登-KY',\n", 1649 | " '炎洲',\n", 1650 | " '如興',\n", 1651 | " '利勤',\n", 1652 | " '廣越',\n", 1653 | " '冠星-KY',\n", 1654 | " '宜新實業',\n", 1655 | " '東台',\n", 1656 | " '瑞智',\n", 1657 | " '拓凱',\n", 1658 | " '全球傳動',\n", 1659 | " '銘鈺',\n", 1660 | " '智伸科',\n", 1661 | " '力達-KY',\n", 1662 | " '氣立',\n", 1663 | " '永新-KY',\n", 1664 | " '強信-KY',\n", 1665 | " '穎漢',\n", 1666 | " '元翎',\n", 1667 | " '時碩工業',\n", 1668 | " '鈞興-KY',\n", 1669 | " '駐龍',\n", 1670 | " '大銀微系統',\n", 1671 | " '光隆精密-KY',\n", 1672 | " '台灣精銳',\n", 1673 | " '德淵',\n", 1674 | " '國精化',\n", 1675 | " '華廣',\n", 1676 | " '康普',\n", 1677 | " '台耀',\n", 1678 | " '三福化',\n", 1679 | " '材料-KY',\n", 1680 | " '雙鍵',\n", 1681 | " '南寶',\n", 1682 | " '上品',\n", 1683 | " '日成-KY',\n", 1684 | " '遠傳',\n", 1685 | " '正文',\n", 1686 | " '聯德控股-KY',\n", 1687 | " '致伸',\n", 1688 | " '事欣科',\n", 1689 | " '新唐',\n", 1690 | " '泰鼎-KY',\n", 1691 | " '燦星網',\n", 1692 | " '太極',\n", 1693 | " '茂林-KY',\n", 1694 | " '和碩',\n", 1695 | " '嘉彰',\n", 1696 | " '康控-KY',\n", 1697 | " '凌通',\n", 1698 | " '光鋐',\n", 1699 | " '臻鼎-KY',\n", 1700 | " '誠美材',\n", 1701 | " '天鈺',\n", 1702 | " '十銓',\n", 1703 | " '立積',\n", 1704 | " '佳凌',\n", 1705 | " '眾達-KY',\n", 1706 | " '榮科',\n", 1707 | " '傳奇',\n", 1708 | " '鑫禾',\n", 1709 | " '三星',\n", 1710 | " '訊連',\n", 1711 | " '科嘉-KY',\n", 1712 | " '全訊',\n", 1713 | " '東科-KY',\n", 1714 | " '達興材料',\n", 1715 | " '乙盛-KY',\n", 1716 | " '弘凱',\n", 1717 | " '虹堡',\n", 1718 | " '祥碩',\n", 1719 | " '禾聯碩',\n", 1720 | " 'jpp-KY',\n", 1721 | " '界霖',\n", 1722 | " '豐祥-KY',\n", 1723 | " '桂盟',\n", 1724 | " '中磊',\n", 1725 | " '崇越',\n", 1726 | " '瀚宇博',\n", 1727 | " '松翰',\n", 1728 | " '慧友',\n", 1729 | " '建國',\n", 1730 | " '隆大',\n", 1731 | " '工信',\n", 1732 | " '遠雄',\n", 1733 | " '順天',\n", 1734 | " '鄉林',\n", 1735 | " '皇鼎',\n", 1736 | " '長虹',\n", 1737 | " '東明-KY',\n", 1738 | " '永固-KY',\n", 1739 | " '遠雄港',\n", 1740 | " '四維航',\n", 1741 | " '鳳凰',\n", 1742 | " '中租-KY',\n", 1743 | " '上海商銀',\n", 1744 | " '合庫金',\n", 1745 | " '台南-KY',\n", 1746 | " '大洋-KY',\n", 1747 | " '群益證',\n", 1748 | " '群益期',\n", 1749 | " '競國',\n", 1750 | " '邁達特',\n", 1751 | " '鎰勝',\n", 1752 | " '彩晶',\n", 1753 | " '迎廣',\n", 1754 | " '達運',\n", 1755 | " '上福',\n", 1756 | " '金橋',\n", 1757 | " '富爾特',\n", 1758 | " '亞翔',\n", 1759 | " '柏承',\n", 1760 | " '友勁',\n", 1761 | " '百一',\n", 1762 | " '嘉聯益',\n", 1763 | " '鈞寶',\n", 1764 | " '華興',\n", 1765 | " '浪凡',\n", 1766 | " '凌華',\n", 1767 | " '宏齊',\n", 1768 | " '瑞儀',\n", 1769 | " '達麗',\n", 1770 | " '關貿',\n", 1771 | " '大豐電',\n", 1772 | " '豐藝',\n", 1773 | " '精成科',\n", 1774 | " '巨路',\n", 1775 | " '帆宣',\n", 1776 | " '佳必琪',\n", 1777 | " '亞弘電',\n", 1778 | " '盛群',\n", 1779 | " '詮欣',\n", 1780 | " '飛捷',\n", 1781 | " '今國光',\n", 1782 | " '聯茂',\n", 1783 | " '精誠',\n", 1784 | " '和椿',\n", 1785 | " '居易',\n", 1786 | " '聚鼎',\n", 1787 | " '天瀚',\n", 1788 | " '光鼎',\n", 1789 | " '尼得科超眾',\n", 1790 | " '華孚',\n", 1791 | " '力成',\n", 1792 | " '迅杰',\n", 1793 | " '矽格',\n", 1794 | " '台郡',\n", 1795 | " '同欣電',\n", 1796 | " '宏正',\n", 1797 | " '台表科',\n", 1798 | " '全國電',\n", 1799 | " '康舒',\n", 1800 | " '淳安',\n", 1801 | " '啟碁',\n", 1802 | " '聯嘉',\n", 1803 | " '悅城',\n", 1804 | " '旭隼',\n", 1805 | " '群電',\n", 1806 | " '樺漢',\n", 1807 | " '矽力*-KY',\n", 1808 | " '瑞祺電通',\n", 1809 | " '統新',\n", 1810 | " '光麗-KY',\n", 1811 | " '迅得',\n", 1812 | " '光聖',\n", 1813 | " '元晶',\n", 1814 | " '鈺邦',\n", 1815 | " '訊芯-KY',\n", 1816 | " 'GIS-KY',\n", 1817 | " '台數科',\n", 1818 | " '安集',\n", 1819 | " '晶碩',\n", 1820 | " '南六',\n", 1821 | " '台塑化',\n", 1822 | " '穎崴',\n", 1823 | " '捷敏-KY',\n", 1824 | " '愛普*',\n", 1825 | " '晶心科',\n", 1826 | " '泰福-KY',\n", 1827 | " '北極星藥業-KY',\n", 1828 | " '易華電',\n", 1829 | " '興能高',\n", 1830 | " '虹揚-KY',\n", 1831 | " '研揚',\n", 1832 | " '鋼聯',\n", 1833 | " '申豐',\n", 1834 | " '鼎基',\n", 1835 | " '動力-KY',\n", 1836 | " '和潤企業',\n", 1837 | " 'ABC-KY',\n", 1838 | " '帝寶',\n", 1839 | " '建德工業',\n", 1840 | " '必應',\n", 1841 | " '基士德-KY',\n", 1842 | " '科定',\n", 1843 | " '羅麗芬-KY',\n", 1844 | " '中揚光',\n", 1845 | " '緯穎',\n", 1846 | " '復盛應用',\n", 1847 | " '三能-KY',\n", 1848 | " '騰輝電子-KY',\n", 1849 | " '鋐寶科技',\n", 1850 | " '伊雲谷',\n", 1851 | " '洋基工程',\n", 1852 | " '芯鼎',\n", 1853 | " '旭暉應材',\n", 1854 | " '惠特',\n", 1855 | " '嘉基',\n", 1856 | " '力智',\n", 1857 | " '安普新',\n", 1858 | " '龍德造船',\n", 1859 | " '匯僑設計',\n", 1860 | " '威鋒電子',\n", 1861 | " '志強-KY',\n", 1862 | " '力積電',\n", 1863 | " '展碁國際',\n", 1864 | " 'AES-KY',\n", 1865 | " '視陽',\n", 1866 | " '采鈺',\n", 1867 | " '永豐實',\n", 1868 | " '詠業',\n", 1869 | " '晉弘',\n", 1870 | " '來頡',\n", 1871 | " '森崴能源',\n", 1872 | " '峰源-KY',\n", 1873 | " '汎銓',\n", 1874 | " '天二科技',\n", 1875 | " '圓裕',\n", 1876 | " '睿生光電',\n", 1877 | " '永道-KY',\n", 1878 | " '台通',\n", 1879 | " '矽創',\n", 1880 | " '尖點',\n", 1881 | " '昇陽半導體',\n", 1882 | " '雷虎',\n", 1883 | " '台虹',\n", 1884 | " '南電',\n", 1885 | " '長華*',\n", 1886 | " '陞泰',\n", 1887 | " '致新',\n", 1888 | " '華冠',\n", 1889 | " '瀚荃',\n", 1890 | " '錸寶',\n", 1891 | " '凌巨',\n", 1892 | " '華東',\n", 1893 | " '至上',\n", 1894 | " '振樺電',\n", 1895 | " '福懋科',\n", 1896 | " '南茂',\n", 1897 | " '達方',\n", 1898 | " '無敵',\n", 1899 | " '勤誠',\n", 1900 | " '志超',\n", 1901 | " '明基材',\n", 1902 | " '寶一',\n", 1903 | " '菱光',\n", 1904 | " '富鼎',\n", 1905 | " '宇瞻',\n", 1906 | " '日友',\n", 1907 | " '建新國際',\n", 1908 | " '羅昇',\n", 1909 | " '百和興業-KY',\n", 1910 | " '福貞-KY',\n", 1911 | " '可寧衛',\n", 1912 | " '金麗-KY',\n", 1913 | " '昶昕',\n", 1914 | " '威宏-KY',\n", 1915 | " '阿瘦',\n", 1916 | " '富邦媒',\n", 1917 | " '柏文',\n", 1918 | " '潤泰材',\n", 1919 | " '億豐',\n", 1920 | " '美吉吉-KY',\n", 1921 | " '波力-KY',\n", 1922 | " '山林水',\n", 1923 | " '東哥遊艇',\n", 1924 | " '政伸',\n", 1925 | " '商億-KY',\n", 1926 | " '吉源-KY',\n", 1927 | " '鼎炫-KY',\n", 1928 | " '台汽電',\n", 1929 | " '新天地',\n", 1930 | " '高力',\n", 1931 | " '鈺齊-KY',\n", 1932 | " '台火',\n", 1933 | " '寶成',\n", 1934 | " '大華',\n", 1935 | " '欣巴巴',\n", 1936 | " '統一實',\n", 1937 | " '大台北',\n", 1938 | " '豐泰',\n", 1939 | " '櫻花',\n", 1940 | " '偉聯',\n", 1941 | " '美利達',\n", 1942 | " '中保科',\n", 1943 | " '欣天然',\n", 1944 | " '康那香',\n", 1945 | " '巨大',\n", 1946 | " '福興',\n", 1947 | " '新保',\n", 1948 | " '新海',\n", 1949 | " '泰銘',\n", 1950 | " '中視',\n", 1951 | " '秋雨',\n", 1952 | " '中聯資源',\n", 1953 | " '欣高',\n", 1954 | " '中鼎',\n", 1955 | " '成霖',\n", 1956 | " '慶豐富',\n", 1957 | " '全國',\n", 1958 | " '百和',\n", 1959 | " '宏全',\n", 1960 | " '信義',\n", 1961 | " '裕融',\n", 1962 | " '茂順',\n", 1963 | " '好樂迪',\n", 1964 | " '新麗',\n", 1965 | " '潤泰新',\n", 1966 | " '三發地產',\n", 1967 | " '佳龍',\n", 1968 | " '世紀鋼']" 1969 | ] 1970 | }, 1971 | "metadata": {}, 1972 | "output_type": "display_data" 1973 | } 1974 | ], 1975 | "source": [ 1976 | "import csv\n", 1977 | "import pandas as pd\n", 1978 | "with open('codeSearch.csv',encoding='utf-8',newline='') as file:\n", 1979 | " next(file)\n", 1980 | " csv_reader = csv.reader(file)\n", 1981 | " stock_codes = {}\n", 1982 | " for item in csv_reader:\n", 1983 | " key = item[2]\n", 1984 | " stock_codes[key] = item[3]\n", 1985 | "code_series = pd.Series(stock_codes)\n", 1986 | "display(code_series.index.tolist())\n", 1987 | "display(code_series.values.tolist())" 1988 | ] 1989 | } 1990 | ], 1991 | "metadata": { 1992 | "kernelspec": { 1993 | "display_name": "Python 3", 1994 | "language": "python", 1995 | "name": "python3" 1996 | }, 1997 | "language_info": { 1998 | "codemirror_mode": { 1999 | "name": "ipython", 2000 | "version": 3 2001 | }, 2002 | "file_extension": ".py", 2003 | "mimetype": "text/x-python", 2004 | "name": "python", 2005 | "nbconvert_exporter": "python", 2006 | "pygments_lexer": "ipython3", 2007 | "version": "3.10.12" 2008 | }, 2009 | "orig_nbformat": 4 2010 | }, 2011 | "nbformat": 4, 2012 | "nbformat_minor": 2 2013 | } 2014 | -------------------------------------------------------------------------------- /實際案例/finance/lesson4.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": {}, 7 | "outputs": [ 8 | { 9 | "data": { 10 | "text/html": [ 11 | "
\n", 29 | " | total_bill | \n", 30 | "tip | \n", 31 | "sex | \n", 32 | "smoker | \n", 33 | "day | \n", 34 | "time | \n", 35 | "size | \n", 36 | "
---|---|---|---|---|---|---|---|
0 | \n", 41 | "16.99 | \n", 42 | "1.01 | \n", 43 | "Female | \n", 44 | "No | \n", 45 | "Sun | \n", 46 | "Dinner | \n", 47 | "2 | \n", 48 | "
1 | \n", 51 | "10.34 | \n", 52 | "1.66 | \n", 53 | "Male | \n", 54 | "No | \n", 55 | "Sun | \n", 56 | "Dinner | \n", 57 | "3 | \n", 58 | "
2 | \n", 61 | "21.01 | \n", 62 | "3.50 | \n", 63 | "Male | \n", 64 | "No | \n", 65 | "Sun | \n", 66 | "Dinner | \n", 67 | "3 | \n", 68 | "
3 | \n", 71 | "23.68 | \n", 72 | "3.31 | \n", 73 | "Male | \n", 74 | "No | \n", 75 | "Sun | \n", 76 | "Dinner | \n", 77 | "2 | \n", 78 | "
4 | \n", 81 | "24.59 | \n", 82 | "3.61 | \n", 83 | "Female | \n", 84 | "No | \n", 85 | "Sun | \n", 86 | "Dinner | \n", 87 | "4 | \n", 88 | "
... | \n", 91 | "... | \n", 92 | "... | \n", 93 | "... | \n", 94 | "... | \n", 95 | "... | \n", 96 | "... | \n", 97 | "... | \n", 98 | "
239 | \n", 101 | "29.03 | \n", 102 | "5.92 | \n", 103 | "Male | \n", 104 | "No | \n", 105 | "Sat | \n", 106 | "Dinner | \n", 107 | "3 | \n", 108 | "
240 | \n", 111 | "27.18 | \n", 112 | "2.00 | \n", 113 | "Female | \n", 114 | "Yes | \n", 115 | "Sat | \n", 116 | "Dinner | \n", 117 | "2 | \n", 118 | "
241 | \n", 121 | "22.67 | \n", 122 | "2.00 | \n", 123 | "Male | \n", 124 | "Yes | \n", 125 | "Sat | \n", 126 | "Dinner | \n", 127 | "2 | \n", 128 | "
242 | \n", 131 | "17.82 | \n", 132 | "1.75 | \n", 133 | "Male | \n", 134 | "No | \n", 135 | "Sat | \n", 136 | "Dinner | \n", 137 | "2 | \n", 138 | "
243 | \n", 141 | "18.78 | \n", 142 | "3.00 | \n", 143 | "Female | \n", 144 | "No | \n", 145 | "Thur | \n", 146 | "Dinner | \n", 147 | "2 | \n", 148 | "
244 rows × 7 columns
\n", 152 | "