喵喵陳 喵喵陳
关注数: 29 粉丝数: 107 发帖数: 4,840 关注贴吧数: 131
locale 跟 charset的映射表 pan不給我分享權了,就這樣吧,反正用得上的沒人不能還原@@ 拚了3日才113個lang跟對應charset,輸出remark了java,要的自己刪# import re def gle(s,k,v,m={}): s1=s.split('\n' if("error" not in m.keys()):m["error"]=[] for x in s1: s2=x.split('\t') if(len(s2)<2): m['error'].append(x) continue mks = re.split(r'[ ,/\\]', re.sub(r"\(.*?\)", "", s2[k].lower())) mv=s2[v].lower() for key in mks: if key=='':continue mk=re.split(r'[-_.@/\\]',key)[0] if(mk not in m.keys()):m[mk]=set() res = [r for r in re.split(r"[()/ ,]", mv) if r] m[mk].update(res) return m d1='''arArabic0009009ibm-1089 bgBulgarian0915393ibm-915 csCzech0912390ibm-912 DaDanish0850352ibm-850 daDanish0819333ibm-819 DeGerman0850352ibm-850 deGerman0819333ibm-819 elGreek081332dibm-813 EnEnglish0850352ibm-850 enEnglish0819333ibm-819 EsSpanish Castilian0850352ibm-850 esSpanish Castilian0819333ibm-819 FiFinnish0850352ibm-850 fiFinnish0819333ibm-819 FrFrench0850352ibm-850 frFrench0819333ibm-819 heHebrew0916394ibm-916 hrCroatian0912390ibm-912 huHungarian0912390ibm-912 IsIcelandic0850352ibm-850 isIcelandic0819333ibm-819 ItItalian0850352ibm-850 itItalian0819333ibm-819 JaJapanese09323a4ibm-932 jaJapanese0018012ibm-33722 mkMarshallese0915393ibm-915 NlDutch0850352ibm-850 nlDutch0819333ibm-819 NoNorwegian0850352ibm-850 noNorwegian0819333ibm-819 plPolish0912390ibm-912 PtPortuguese0850352ibm-850 ptPortuguese0819333ibm-819 roRomanian0912390ibm-912 ruRussian0915393ibm-915 shSerbo-Croatian0912390ibm-912 slSlovenian0912390ibm-912 skSlovak0912390ibm-912 srSerbian0915393ibm-915 SvSwedish0850352ibm-850 svSwedish0819333ibm-819 trTurkish0920398ibm-920''' m=gle(d1,0,-1) s1=d1.split('\n') m1={} for x in s1: s2=x.split('\t') mk=s2[0][0:2].lower() if(mk not in m1.keys()):m1[mk]=[] m1[mk].append(s2[-1]) d2='''aribm-1089 (ISO-8859-6)阿拉伯語 (Arabic) bgibm-915 (ISO-8859-5)保加利亞語 (Bulgarian) csibm-912 (ISO-8859-2)捷克語 (Czech) daibm-819 (ISO-8859-1)丹麥語 (Danish)小寫代表一般 ISO 映射 Daibm-850丹麥語 (Danish)大寫通常對應 OEM/DOS 映射 deibm-819 (ISO-8859-1)德語 (German) Deibm-850德語 (German) elibm-813 (ISO-8859-7)希臘語 (Greek) enibm-819 (ISO-8859-1)英語 (English) Enibm-850英語 (English) esibm-819 (ISO-8859-1)西班牙語 (Spanish) Esibm-850西班牙語 (Spanish) fiibm-819 (ISO-8859-1)芬蘭語 (Finnish) Fiibm-850芬蘭語 (Finnish) fribm-819 (ISO-8859-1)法語 (French) Fribm-850法語 (French) heibm-916 (ISO-8859-8)希伯來語 (Hebrew) hribm-912 (ISO-8859-2)克羅埃西亞語 (Croatian) huibm-912 (ISO-8859-2)匈牙利語 (Hungarian) isibm-819 (ISO-8859-1)冰島語 (Icelandic) Isibm-850冰島語 (Icelandic) itibm-819 (ISO-8859-1)義大利語 (Italian) Itibm-850義大利語 (Italian) jaibm-33722 (EUC-JP)日語 (Japanese) Jaibm-943 / ibm-932日語 (Japanese)常見為 Shift-JIS koibm-949韓語 (Korean) mkibm-915 (ISO-8859-5)馬其頓語 (Macedonian) nlibm-819 (ISO-8859-1)荷蘭語 (Dutch) Nlibm-850荷蘭語 (Dutch) noibm-819 (ISO-8859-1)挪威語 (Norwegian) Noibm-850挪威語 (Norwegian) plibm-912 (ISO-8859-2)波蘭語 (Polish) ptibm-819 (ISO-8859-1)葡萄牙語 (Portuguese) Ptibm-850葡萄牙語 (Portuguese) roibm-912 (ISO-8859-2)羅馬尼亞語 (Romanian) ruibm-915 (ISO-8859-5)俄語 (Russian) shibm-912 (ISO-8859-2)塞爾維亞-克羅埃西亞語 slibm-912 (ISO-8859-2)斯洛維尼亞語 (Slovenian) skibm-912 (ISO-8859-2)斯洛伐克語 (Slovak) sribm-915 (ISO-8859-5)塞爾維亞語 (Serbian) svibm-819 (ISO-8859-1)瑞典語 (Swedish) Svibm-850瑞典語 (Swedish) tribm-920 (ISO-8859-9)土耳其語 (Turkish) zh (TW/HK)ibm-950 (Big5)繁體中文 zh (CN)ibm-1388 / ibm-936簡體中文''' m=gle(d2,0,1,m) s1=d2.split("\n") for x in s1: s2=x.split('\t') mk=s2[0][0:2].lower() mv=s2[1].lower() if(mk not in m1.keys()):m1[mk]=[] res=re.split(r"[()/]", mv) m1[mk]+=res d3='''ar阿拉伯語ibm-1089ISO-8859-6阿拉伯文標準 bg保加利亞語ibm-915ISO-8859-5西里爾字母 cs捷克語ibm-912ISO-8859-2中歐拉丁語系 da丹麥語ibm-819 / ibm-850ISO-8859-1850 為多語言 OEM de德語ibm-819 / ibm-850ISO-8859-1西歐通用 el希臘語ibm-813ISO-8859-7希臘文 en英語ibm-819 / ibm-850ISO-8859-1 es西班牙語ibm-819 / ibm-850ISO-8859-1 et愛沙尼亞語ibm-921ISO-8859-13波羅的海語系 fi芬蘭語ibm-819 / ibm-850ISO-8859-1 fr法語ibm-819 / ibm-850ISO-8859-1 he / iw希伯來語ibm-916ISO-8859-8包含舊代碼 iw hi印地語utf-8UTF-8Java 預設不支援 legacy 編碼 hr克羅埃西亞語ibm-912ISO-8859-2 hu匈牙利語ibm-912ISO-8859-2 is冰島語ibm-819 / ibm-850ISO-8859-1 it義大利語ibm-819 / ibm-850ISO-8859-1 ja日語ibm-943 / ibm-33722Shift_JIS / EUC-JP33722 為 EUC-JP ko韓語ibm-949EUC-KR lt立陶宛語ibm-921ISO-8859-13 lv拉脫維亞語ibm-921ISO-8859-13 mk馬其頓語ibm-915ISO-8859-5 nl荷蘭語ibm-819 / ibm-850ISO-8859-1 no挪威語ibm-819 / ibm-850ISO-8859-1 pl波蘭語ibm-912ISO-8859-2 pt葡萄牙語ibm-819 / ibm-850ISO-8859-1 ro羅馬尼亞語ibm-912ISO-8859-2 ru俄語ibm-915 / ibm-1251ISO-8859-5Windows 常見 1251 sh / sr塞爾維亞語ibm-912 / ibm-915ISO-8859-2/5區分拉丁/西里爾字母 sk斯洛伐克語ibm-912ISO-8859-2 sl斯洛維尼亞語ibm-912ISO-8859-2 sv瑞典語ibm-819 / ibm-850ISO-8859-1 th泰語ibm-1162 / ibm-874TIS-620Windows-874 tr土耳其語ibm-920ISO-8859-9 uk烏克蘭語ibm-1124ISO-8859-5 vi越南語ibm-1258Windows-1258 zh-CN簡體中文ibm-936 / ibm-1388GBK / GB180301388 為主機端編碼 zh-TW繁體中文ibm-950Big5''' m=gle(d3,0,2,m) d4='''ar阿拉伯語ibm-1089ISO-8859-6阿拉伯文標準 bg保加利亞語ibm-915ISO-8859-5西里爾字母 cs捷克語ibm-912ISO-8859-2中歐拉丁語系 da丹麥語ibm-819 / ibm-850ISO-8859-1850 為多語言 OEM de德語ibm-819 / ibm-850ISO-8859-1西歐通用 el希臘語ibm-813ISO-8859-7希臘文 en英語ibm-819 / ibm-850ISO-8859-1 es西班牙語ibm-819 / ibm-850ISO-8859-1 et愛沙尼亞語ibm-921ISO-8859-13波羅的海語系 fi芬蘭語ibm-819 / ibm-850ISO-8859-1 fr法語ibm-819 / ibm-850ISO-8859-1 he / iw希伯來語ibm-916ISO-8859-8包含舊代碼 iw hi印地語utf-8UTF-8Java 預設不支援 legacy 編碼 hr克羅埃西亞語ibm-912ISO-8859-2 hu匈牙利語ibm-912ISO-8859-2 is冰島語ibm-819 / ibm-850ISO-8859-1 it義大利語ibm-819 / ibm-850ISO-8859-1 ja日語ibm-943 / ibm-33722Shift_JIS / EUC-JP33722 為 EUC-JP ko韓語ibm-949EUC-KR lt立陶宛語ibm-921ISO-8859-13 lv拉脫維亞語ibm-921ISO-8859-13 mk馬其頓語ibm-915ISO-8859-5 nl荷蘭語ibm-819 / ibm-850ISO-8859-1 no挪威語ibm-819 / ibm-850ISO-8859-1 pl波蘭語ibm-912ISO-8859-2 pt葡萄牙語ibm-819 / ibm-850ISO-8859-1 ro羅馬尼亞語ibm-912ISO-8859-2 ru俄語ibm-915 / ibm-1251ISO-8859-5Windows 常見 1251 sh / sr塞爾維亞語ibm-912 / ibm-915ISO-8859-2/5區分拉丁/西里爾字母 sk斯洛伐克語ibm-912ISO-8859-2 sl斯洛維尼亞語ibm-912ISO-8859-2 sv瑞典語ibm-819 / ibm-850ISO-8859-1 th泰語ibm-1162 / ibm-874TIS-620Windows-874 tr土耳其語ibm-920ISO-8859-9 uk烏克蘭語ibm-1124ISO-8859-5 vi越南語ibm-1258Windows-1258 zh-CN簡體中文ibm-936 / ibm-1388GBK / GB180301388 為主機端編碼 zh-TW繁體中文ibm-950Big5''' m=gle(d4,0,2,m) #print(m1,len(m1)) d5='''caibm-819, ibm-850, iso-8859-1加泰隆尼亞語 (Catalan) gaibm-819, iso-8859-1, iso-8859-15愛爾蘭語 (Irish) mtibm-922, iso-8859-3馬爾他語 (Maltese) sqibm-912, iso-8859-2阿爾巴尼亞語 (Albanian) iwibm-916, iso-8859-8希伯來語 (舊代碼,Java 常用) inibm-819, iso-8859-1印尼語 (舊代碼,現為 id) msibm-819, iso-8859-1馬來語 (Malay) faibm-1098, cp1256波斯語 (Persian) hyibm-1117, armscii-8亞美尼亞語 (Armenian) kaibm-1118喬治亞語 (Georgian) azibm-1254, iso-8859-9阿塞拜疆語 (Azerbaijani)''' m=gle(d5,0,1,m) d6=''' en, fr, de, es, itISO-8859-1, Windows-1252 pl, cs, sk, huISO-8859-2, Windows-1250 ru, bg, srISO-8859-5, Windows-1251, KOI8-R ukKOI8-U, Windows-1251 elISO-8859-7, Windows-1253 tr, azISO-8859-9, Windows-1254 heISO-8859-8, Windows-1255 ar, faISO-8859-6, Windows-1256 lv, lt, etISO-8859-13, Windows-1257 viWindows-1258, VISCII cy, gdISO-8859-14 roISO-8859-2, ISO-8859-16 thTIS-620, ISO-8859-11, Windows-874 zh-CNGBK, GB18030 zh-TW, zh-HKBig5, Big5-HKSCS jaShift_JIS, EUC-JP, ISO-2022-JP koEUC-KR, ISO-2022-KR hyARMSCII-8 kaGEOSTD8 hi, bn, ta, te, mrISCII''' m=gle(d6,0,1,m) d7=''' enISO-8859-1 / windows-1252西歐語言 (English, French, German, Spanish, Italian) frISO-8859-1 / windows-1252法語 deISO-8859-1 / windows-1252德語 esISO-8859-1 / windows-1252西班牙語 itISO-8859-1 / windows-1252義大利語 plISO-8859-2 / windows-1250波蘭語 csISO-8859-2 / windows-1250捷克語 skISO-8859-2 / windows-1250斯洛伐克語 huISO-8859-2 / windows-1250匈牙利語 roISO-8859-2 / ISO-8859-16羅馬尼亞語 ruISO-8859-5 / windows-1251 / KOI8-R俄語 ukISO-8859-5 / KOI8-U / windows-1251烏克蘭語 bgISO-8859-5 / windows-1251保加利亞語 srISO-8859-5 / ISO-8859-2 / windows-1251塞爾維亞語 (西里爾/拉丁) shISO-8859-2 / ISO-8859-5塞爾維亞-克羅埃西亞語 elISO-8859-7 / windows-1253希臘語 trISO-8859-9 / windows-1254土耳其語 azISO-8859-9 / windows-1254阿塞拜疆語 heISO-8859-8 / windows-1255希伯來語 iwISO-8859-8 / windows-1255希伯來語 (舊代碼) arISO-8859-6 / windows-1256阿拉伯語 facp1256 / ibm-1098波斯語 hiISCII / UTF-8印地語 bnISCII / UTF-8孟加拉語 taISCII / UTF-8泰米爾語 teISCII / UTF-8泰盧固語 mrISCII / UTF-8馬拉地語 thTIS-620 / ISO-8859-11 / windows-874泰語 viwindows-1258 / VISCII越南語 zh-CNGBK / GB18030簡體中文 zh-TWBig5 / Big5-HKSCS繁體中文 zh-HKBig5-HKSCS香港繁體中文 yueBig5-HKSCS粵語 (廣東話) jaShift_JIS / EUC-JP / ISO-2022-JP日語 koEUC-KR / ISO-2022-KR韓語 hyARMSCII-8亞美尼亞語 kaGEOSTD8喬治亞語 etISO-8859-13 / windows-1257愛沙尼亞語 lvISO-8859-13 / windows-1257拉脫維亞語 ltISO-8859-13 / windows-1257立陶宛語 cyISO-8859-14威爾士語 gdISO-8859-14蘇格蘭蓋爾語 gaISO-8859-1 / ISO-8859-15愛爾蘭語 mtISO-8859-3 / ibm-922馬爾他語''' m=gle(d7,0,1,m) d8=''' seISO-8859-10北歐薩米語 (Northern Sami),ISO-8859-10 支援北歐特殊字母 smiISO-8859-10薩米語族群 (泛用) brISO-8859-14布列塔尼語 (Breton),凱爾特語支援 kwISO-8859-14康沃爾語 (Cornish),凱爾特語支援 gvISO-8859-14馬恩島語 (Manx),凱爾特語支援 beKOI8-B白俄羅斯語 (Belarusian),有 KOI8-B 舊編碼 mnKOI8-M蒙古語 (Mongolian),有 KOI8-M 舊編碼 paISCII-Punjabi旁遮普語 (Punjabi),ISCII 子集 guISCII-Gujarati古吉拉特語 (Gujarati),ISCII 子集 knISCII-Kannada卡納達語 (Kannada),ISCII 子集 mlISCII-Malayalam馬拉雅拉姆語 (Malayalam),ISCII 子集 orISCII-Oriya奧里亞語 (Oriya),ISCII 子集 siISCII-Sinhala僧伽羅語 (Sinhala),雖然現代多用 UTF-8''' m=gle(d8,0,1,m) d9=''' eoISO-8859-3世界語 (Esperanto),常見於 ISO-8859-3 laISO-8859-1拉丁語 (Latin),通常 fallback 到西歐 Latin-1 saISCII-Sanskrit梵語 (Sanskrit),ISCII 子集 ksISCII-Kashmiri喀什米爾語 (Kashmiri),ISCII 子集 neISCII-Nepali尼泊爾語 (Nepali),ISCII 子集 urcp1256 / ISO-8859-6烏爾都語 (Urdu),多用阿拉伯字母編碼 amEthiopic (ECMA-114)阿姆哈拉語 (Amharic),有舊 Ethiopic 編碼,現多用 UTF-8 tiEthiopic (ECMA-114)提格里尼亞語 (Tigrinya),同上 dzUnicode only (UTF-8)不丹語 (Dzongkha),舊系統無 legacy charset,僅 UTF-8 kmKhmer (legacy Khmer encoding)高棉語 (Khmer),有舊 Khmer 字集,現多用 UTF-8 loLao (legacy Lao encoding)寮語 (Lao),有舊 Lao 字集,現多用 UTF-8 kkKOI8-K哈薩克語 (Kazakh),有 KOI8-K 舊編碼 tgKOI8-T塔吉克語 (Tajik),有 KOI8-T 舊編碼 uzKOI8-UZ烏茲別克語 (Uzbek),有 KOI8-UZ 舊編碼 kk / tg / uzcp866前蘇聯地區常用 OEM Cyrillic 編碼 becp1251白俄羅斯語 (Belarusian),Windows 常用 1251 kkcp1251哈薩克語 (Kazakh),Windows 常用 1251 tgcp1251塔吉克語 (Tajik),Windows 常用 1251 uzcp1251烏茲別克語 (Uzbek),Windows 常用 1251 kaUnicode only (UTF-8)喬治亞語 (Georgian),現代系統僅 UTF-8 sicp1252 (fallback)僧伽羅語 (Sinhala),舊系統多用 UTF-8,少數 fallback Latin-1 mylegacy Burmese encoding緬甸語 (Burmese),有舊 Burmese 字集,現多用 UTF-8 pscp1256普什圖語 (Pashto),阿拉伯字母編碼 kscp1256喀什米爾語 (Kashmiri),阿拉伯字母編碼 sdcp1256信德語 (Sindhi),阿拉伯字母編碼 bsISO-8859-2 / cp1250波士尼亞語 (Bosnian),通常與塞爾維亞/克羅埃西亞共用中歐編碼 mkcp1251馬其頓語 (Macedonian),Windows 常用 1251 kkISO-8859-5哈薩克語 (Kazakh),部分舊系統用 ISO-8859-5 tgISO-8859-5塔吉克語 (Tajik),部分舊系統用 ISO-8859-5 uzISO-8859-5烏茲別克語 (Uzbek),部分舊系統用 ISO-8859-5 beISO-8859-5白俄羅斯語 (Belarusian),常見 Cyrillic legacy 編碼 kk / tg / uzKOI8-RU前蘇聯地區混合俄/烏/中亞的 KOI8 變種 aaUTF-8 only阿法爾語 (Afar),舊系統無 legacy charset omUTF-8 only奧羅莫語 (Oromo),舊系統無 legacy charset swcp1252 / ISO-8859-1斯瓦西里語 (Swahili),多用西歐 Latin-1 hacp1252 / ISO-8859-1豪薩語 (Hausa),多用西歐 Latin-1 yocp1252 / ISO-8859-1約魯巴語 (Yoruba),多用西歐 Latin-1 igcp1252 / ISO-8859-1伊博語 (Igbo),多用西歐 Latin-1 zucp1252 / ISO-8859-1祖魯語 (Zulu),多用西歐 Latin-1 xhcp1252 / ISO-8859-1科薩語 (Xhosa),多用西歐 Latin-1 tkcp1254 / ISO-8859-9土庫曼語 (Turkmen),多用土耳其語編碼 kycp1251 / ISO-8859-5吉爾吉斯語 (Kyrgyz),Cyrillic legacy 編碼 mocp1251 / ISO-8859-5摩爾多瓦語 (Moldovan),常視為羅馬尼亞語變體 bacp1251 / ISO-8859-5巴什基爾語 (Bashkir),Cyrillic legacy 編碼 ttcp1251 / ISO-8859-5鞑靼語 (Tatar),Cyrillic legacy 編碼 cvcp1251 / ISO-8859-5楚瓦什語 (Chuvash),Cyrillic legacy 編碼 ugcp1256 / ISO-8859-6維吾爾語 (Uyghur),阿拉伯字母編碼 kk / tg / uzKOI8-F前蘇聯地區的 KOI8 另一變種 (白俄/中亞) syrcp1256敘利亞語 (Syriac),阿拉伯字母編碼,現多用 UTF‑8 bercp1252柏柏爾語 (Berber),舊系統多 fallback Latin‑1 qucp1252克丘亞語 (Quechua),拉丁字母,舊系統多 fallback Latin‑1 aycp1252艾馬拉語 (Aymara),拉丁字母,舊系統多 fallback Latin‑1 gncp1252瓜拉尼語 (Guarani),拉丁字母,舊系統多 fallback Latin‑1 micp1252毛利語 (Māori),拉丁字母,舊系統多 fallback Latin‑1 smcp1252薩摩亞語 (Samoan),拉丁字母,舊系統多 fallback Latin‑1 tocp1252東加語 (Tongan),拉丁字母,舊系統多 fallback Latin‑1 fjcp1252斐濟語 (Fijian),拉丁字母,舊系統多 fallback Latin‑1 kk / tg / uzKOI8-UZ / KOI8-KZ中亞地區的 KOI8 變種,歷史上曾用於哈薩克/烏茲別克 kk / tg / uzPTCP154西里爾字母的哈薩克語編碼 (Kazakh Cyrillic),舊主機系統常見 kk / tg / uzRK1048哈薩克語另一舊編碼 (Kazakh legacy) kaPS Georgian喬治亞語 (Georgian),有舊 PS/GEOSTD8 以外的編碼 mnMongolian legacy蒙古語 (Mongolian),有舊 Mongolian script 編碼,現多用 UTF‑8 boTibetan legacy藏語 (Tibetan),有舊 Tibetan script 編碼,現多用 UTF‑8 siISCII-Sinhala僧伽羅語 (Sinhala),除了 cp1252 fallback,也有 ISCII 子集 ksISCII-Kashmiri喀什米爾語 (Kashmiri),除 cp1256 外也有 ISCII 子集 neISCII-Nepali尼泊爾語 (Nepali),除 UTF‑8 外也有 ISCII 子集 piISCII-Pali巴利語 (Pali),印度次大陸古典語言,ISCII 子集 sdISCII-Sindhi信德語 (Sindhi),除 cp1256 外也有 ISCII 子集 ugArabic Presentation Forms維吾爾語 (Uyghur),部分舊系統用阿拉伯字母特殊編碼 syrSyriac legacy敘利亞語 (Syriac),有舊 Syriac script 編碼,現多用 UTF‑8 berISO-8859-16柏柏爾語 (Berber),部分舊系統用 ISO-8859-16 拉丁擴展 qu / ay / gnISO-8859-1 / cp1252南美語言 (Quechua, Aymara, Guarani),舊系統多 fallback Latin‑1 mi / sm / to / fjISO-8859-1 / cp1252太平洋語言 (Māori, Samoan, Tongan, Fijian),舊系統多 fallback Latin‑1 ''' m=gle(d9,0,1,m) print(m,len(m)-1,'還有增補嗎?有的請放table喵') res="private Map<String,List<String>> localecharset=Map.ofEntries(" for k in m: if(k=="error"):continue s='List.of(' for x in m[k]: s+=f'"{x}",' s+="\b)" res+=f'\nMap.entry("{k}",{s}),' res+='\b);' #print(res)
求kivy可用的新手教學 想自學kivy,然後找了一堆第一個範例就 Traceback (most recent call last):的教學,求可用的新手教學 ------ py l0001.py [INFO ] [Logger ] Record log in C:\Users\Administrator.SC-202408252053\.kivy\logs\kivy_24-11-02_2.txt [INFO ] [deps ] Successfully imported "kivy_deps.angle" 0.4.0 [INFO ] [deps ] Successfully imported "kivy_deps.glew" 0.3.1 [INFO ] [deps ] Successfully imported "kivy_deps.sdl2" 0.7.0 [INFO ] [Kivy ] v2.3.0 [INFO ] [Kivy ] Installed at "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\__init__.py" [INFO ] [Python ] v3.12.4 (tags/v3.12.4:8e8a4ba, Jun 6 2024, 19:13:20) [MSC v.1940 32 bit (Intel)] [INFO ] [Python ] Interpreter at "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\python.exe" [INFO ] [Logger ] Purge log fired. Processing... [INFO ] [Logger ] Purge finished! [INFO ] [Factory ] 195 symbols loaded [INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored) Traceback (most recent call last): File "D:\kivy\l0001.py", line 15, in <module> PongApp().run() File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\app.py", line 955, in run self._run_prepare() File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\app.py", line 924, in _run_prepare self.load_kv(filename=self.kv_file) File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\app.py", line 697, in load_kv root = Builder.load_file(rfilename) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\lang\builder.py", line 310, in load_file return self.load_string(data, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\lang\builder.py", line 377, in load_string parser = Parser(content=string, filename=fn) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\lang\parser.py", line 483, in __init__ self.parse(content) File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\lang\parser.py", line 593, in parse objects, remaining_lines = self.parse_level(0, lines) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Administrator.SC-202408252053\AppData\Local\Programs\Python\Python312-32\Lib\site-packages\kivy\lang\parser.py", line 666, in parse_level raise ParserException(self, ln, kivy.lang.parser.ParserException: Parser: File "D:\kivy\pong.kv", line 1: ... >> 1:#:kivy 1.0.9 2: 3:<PongBall>: ... Invalid data after declaration D:\kivy>
pygame取得中文輸入.... 竟然這麼簡單......在pygame.event.get()這list中 if event.type == pygame.TEXTINPUT : print(event.dict['text']) 就得到了...... (不過要SDL2,這是甚麼?那些os有???好吧...android,ios,linux都能裝,沒有的請自己裝...) (不過沒有pygame.key.start_text_input就沒有輸入法介面......回頭還是要啃的......) (tab,f1~f9999999,backspace,Enter,arrow,shift,alt,ctrl...沒包括,這半個月的學習KEY還是有必要的....) [靖不用告訴我['K_BACKSPACE', 'K_TAB', 'K_CLEAR', 'K_RETURN', 'K_PAUSE', 'K_ESCAPE', 'K_SPACE', 'K_EXCLAIM', 'K_QUOTEDBL', 'K_HASH', 'K_DOLLAR', 'K_AMPERSAND', 'K_QUOTE', 'K_LEFTPAREN', 'K_RIGHTPAREN', 'K_ASTERISK', 'K_PLUS', 'K_COMMA', 'K_MINUS', 'K_PERIOD', 'K_SLASH', 'K_0', 'K_1', 'K_2', 'K_3', 'K_4', 'K_5', 'K_6', 'K_7', 'K_8', 'K_9', 'K_COLON', 'K_SEMICOLON', 'K_LESS', 'K_EQUALS', 'K_GREATER', 'K_QUESTION', 'K_AT', 'K_LEFTBRACKET', 'K_BACKSLASH', 'K_RIGHTBRACKET', 'K_CARET', 'K_UNDERSCORE', 'K_BACKQUOTE', 'K_a', 'K_b', 'K_c', 'K_d', 'K_e', 'K_f', 'K_g', 'K_h', 'K_i', 'K_j', 'K_k', 'K_l', 'K_m', 'K_n', 'K_o', 'K_p', 'K_q', 'K_r', 'K_s', 'K_t', 'K_u', 'K_v', 'K_w', 'K_x', 'K_y', 'K_z', 'K_DELETE', 'K_KP0', 'K_KP1', 'K_KP2', 'K_KP3', 'K_KP4', 'K_KP5', 'K_KP6', 'K_KP7', 'K_KP8', 'K_KP9', 'K_KP_PERIOD', 'K_KP_DIVIDE', 'K_KP_MULTIPLY', 'K_KP_MINUS', 'K_KP_PLUS', 'K_KP_ENTER', 'K_KP_EQUALS', 'K_UP', 'K_DOWN', 'K_RIGHT', 'K_LEFT', 'K_INSERT', 'K_HOME', 'K_END', 'K_PAGEUP', 'K_PAGEDOWN', 'K_F1', 'K_F2', 'K_F3', 'K_F4', 'K_F5', 'K_F6', 'K_F7', 'K_F8', 'K_F9', 'K_F10', 'K_F11', 'K_F12', 'K_F13', 'K_F14', 'K_F15', 'K_NUMLOCK', 'K_CAPSLOCK', 'K_SCROLLOCK', 'K_RSHIFT', 'K_LSHIFT', 'K_RCTRL', 'K_LCTRL', 'K_RALT', 'K_LALT', 'K_RMETA', 'K_LMETA', 'K_LSUPER', 'K_RSUPER', 'K_MODE', 'K_HELP', 'K_PRINT', 'K_SYSREQ', 'K_BREAK', 'K_MENU', 'K_POWER', 'K_EURO', 'K_AC_BACK'],這東西我切成str list存檔了的.......]想學py....dir真好用.....
pygame及更早的學習(寫遊戲)隨筆 http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fpan.baidu.com%2Fs%2F1-jcxi_rv5-obiGDrgDG6Qw%3Fpwd%3Db57e&urlrefer=8539fc6a72d6866f652795e003bea76f 嗯,這是我小時第一個學會的遊戲加了點料轉成py....誰能說這沒有GUI的不是遊戲! 不過還是由https://tieba.baidu.com/p/8898716003的說起吧.......涂了的是跟圖1重了的,省得干擾.... http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fpan.baidu.com%2Fs%2F1TdwleIzie1TbVw64ouFR7g%3Fpwd%3D4dkr&urlrefer=42a5560b3aeec948e59764e530035445 刪掉多的也有這段...... 首先.....還是說import 吧....這是把一個模組引入的意思....就跟你把快遞開箱來用差不多... 下面pygame.init()就是把pygame中很多東西..我也沒搞懂是初始化還是喚醒....總之有一堆功能要init()後才能用...pygame.init()一次就全準備好了....不過你也可以分開init()只叫用的.... win=pygame.display.get_desktop_sizes()[0] 這是拿到屏幕的數據了,不過有很多我只要list中的第一組.... ww=win[0]把前面的win斬成兩個變數... wh=win[1] screen = pygame.display.set_mode((ww/4*3,wh/4*3),pygame.NOFRAME)這行的 pygame.display.set_mode是 整個GUI,整個程序我應為最重要的code,沒有之一......這就是打開一個叫screen的視窗,沒了display就沒有視窗, (ww/4*3,wh/4*3)定義了視窗大小,pygame.NOFRAME只是把正常視窗上面討厭的程序名,X鍵關了,可以刪的這一 個位有很多功能例如全屏,視窗大小可調整跟其他不知幹甚麼的...自己去pygame官網看....當想用複數功能時就用 +加起來例如pygame.FULLSCREEN+pygame.NOFRAME+pygame.RESIZABLE不過沒人會這樣做...... clock = pygame.time.Clock() 這我只知道後面clock.tick(x)一秒多少幀畫面要用....至於時間....我一向用datetime.... fontlist把pygame讀到的字型列表了....font=pygame.font.SysFont(fontlist[27],12)就是在系統字型中拉了第28種(我 的機的....)來用,大小是12.... map = pygame.Surface((48,48*6)) 後面改成mapt的是一個只存在在記憶體中的畫面()中是像素的面積,除了這種因 為生氣隨手打的垃圾程式,沒人會叫電腦這時候算48*6之類的......早算好這填數字就好....更別說後面那些「圖」了 mapt.fill((255,255,255))給mapt這圖填滿(255,255,255)的顏色....也就是白色..相關看RGB色的東西 maptstr = font.render('平地',True,(0,0,0),(128,128,0)) 做出'平地'這字串,True我不知道用途,兩組()分別是文字色跟底色 strpos = maptstr.get_rect() 叫出文字位置 strpos.center = 24,24 重定義文字的中心位置...這堆dir()就知道了... mapt.blit(maptstr,strpos) 把strpos改成(123,456)那maptstr位置會到了(123,456)而不是strpos... blit很重要....你準備了字跟圖...記得要用blit貼到圖/視窗上...... screen.blit(mapt,(0,0)) 相比前面mapt把maptstr貼到strpos,這就是screen把mapt貼到(0,0)了... screen.blit(me,(70,0)) pygame.display.flip()把視窗更新了......不然你怎麼畫,視窗都沒反應喲...... 其他的.....我沒吃透,就知道想正常關視窗要有pygame.QUIT那塊,不然退出時會報錯......
白人論(源自白馬論)[笑] 白人論 原立論者︰兒說 白馬論原作者:公孫龍 改篇︰陳喵 “白人非人”,可乎? 曰:可。 曰:何哉? 曰:人者,所以命形也;白者,所以命色也。命色者非名形也。故曰: “白人非人”。 曰:有人不可謂無人也。不可謂無人者,非人也?有白人為有人,白 之,非人何也? 曰:求人,黃、黑人皆可致;求白人,黃、黑人不可致。是白人乃人 也,是所求一也。所求一者,白者不異人也,所求不異,如黃、黑人有可有不 可,何也?可與不可,其相非明。如黃、黑人一也,而可以應有人,而不可以 應有白人,是白人之非人,審矣! 曰:以人之有色為非人,天下非有無色之人。天下無人可乎? 曰:人固有色,故有白人。使人無色,有人如已耳,安取白人?故白 人非人也。白人者,人與白也。黑與白,人也?故曰白人非人業。 曰:人未與白為人,白未與人為白。合人與白,復名白人。是相與以 不相與為名,未可。故曰:白人非人未可。 曰:以“有白人為有人”,謂有白人為有黃人,可乎? 曰:未可。 曰:以“有人為異有黃人”,是異黃人與人也;異黃人與人,是以黃為 非人。以黃人為非人,而以白人為有人,此飛者入池而棺槨異處,此天下之悖 言辭也。 以“有白人不可謂無人”者,離白之謂也;不離者有白人不可謂有人 也。故所以為有人者,獨以人為有人耳,非以白人為有人耳。故其為有人也, 不可以謂“白人”也。 以“白者不定所白”,忘之而可也。白人者,言白定所白也,定所白 者非白也。人者,無去取於色,故黃、黑皆所以應;白人者,有去取於色,黃、 黑人皆所以色去,故唯白人獨可以應耳。無去者非有去也,故曰:“白人非人”。
戰鬥介面(初步測試)分享 title "battle sim Ver 0.3" // start moduleize // ©2018 Chanmew randomize #module char #deffunc charcre str s split #deffunc bar int x, int y, int m, int l, str c color 128,128,128 boxf x,y,x+m+1,y+2 color 255,255,255 if c = "r":color 255,0,0 if c = "g":color 0,255,0 if c = "b":color 0,0,255 if c = "c":color 0,255,255 if l<=0:return if l>m:line x+1,y+1,x+m,y+1:return line x+1,y+1,x+l-1,y+1:return #global *start cls randomize c1n = "player 1" c1h = 1000 c1m = 1000 c1a = 100 c1acc = 100 c1d = 100 c1dod = 100 c1sb = 2000 c1s = 100 c2n = "player 2" c2h = 1000 c2m = 1000 c2a = 100 c2acc = 100 c2d = 100 c2dod = 100 c2sb = 2000 c2s = 100 pos 0,100 mes "name" mes "hp" mes "mp" mes "att" mes "acc" mes "def" mes "dod" mes "s b" mes "spe" pos 80,100 input c1n// c1 = char 1, name input c1h// HP input c1m// MP,Force point input c1a// attack power,damage input c1acc// accuracy input c1d// defense, damage resist input c1dod// dodge input c1sb// speed bar, action comsume speed bar input c1s// speed, round refill speed bar pos 400,100 input c2n// p1 = player 1, name input c2h// HP input c2m// MP,Force point input c2a// attack power,damage input c2acc// accuracy input c2d// defense, damage resist input c2dod// dodge input c2sb// speed bar, action comsume speed bar input c2s// speed, round refill speed bar pos 280,230 button "fight",*startfight stop *startfight round = 0 c1msb = c1sb c2msb = c2sb c1mhp = c1h c2mhp = c2h c1mmp = c1m c2mmp = c2m *display cls pos 200,0 mes "round "+round pos 100,100 color 0,0,0 mes c1n bar 100,120,100,c1h*100/c1mhp,"r" bar 100,130,100,c1m*100/c1mmp,"b" bar 100,140,100,c1sb*100/c1msb,"c" pos 400,100 color 0,0,0 mes c2n bar 400,120,100,c2h*100/c2mhp,"r" bar 400,130,100,c2m*100/c2mmp,"b" bar 400,140,100,c2sb*100/c2msb,"c" *roundcul round ++ c1sb += c1s c2sb += c2s if c1sb>=c1msb:c1sb=0:gosub *c1att if c2sb>=c2msb:c2sb=0:gosub *c2att wait 3 if c1h<0:goto *fin if c2h<0:goto *fin goto *display *c1att i1 = rnd(c1acc) i2 = rnd(c2dod) if i2>i1:return i1=rnd(c1a)+c1a i2=rnd(c2d) i3 = i1-i2 if i3<=0:return c2h -= i3 return *c2att i1 = rnd(c2acc) i2 = rnd(c1dod) if i2>i1:return i1=rnd(c2a)+c2a i2=rnd(c1d) i3 = i1-i2 if i3<=0:return c1h -= i3 return *fin cls pos 300,200 if c1h>0:mes ""+c1n +" Win!":else:if c2h>0:mes ""+c2n +" Win!":else:mes "Draw!" pos 320,300 button "newgame",*start stop
1 下一页