forked from win895564/AI_Project
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStr_Q2B.py
40 lines (38 loc) · 1.27 KB
/
Str_Q2B.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# -*- coding: utf-8 -*-
"""
Created on Wed Apr 13 10:49:55 2022
@author: user
"""
def strQ2B(ustring):
"""把字串全形轉半形"""
ss = []
for s in ustring:
rstring = ""
for uchar in s:
inside_code = ord(uchar)
if inside_code == 12288: # 全形空格直接轉換
inside_code = 32
elif (inside_code >= 65281 and inside_code <= 65374): # 全形字元(除空格)根據關係轉化
inside_code -= 65248
rstring += chr(inside_code)
ss.append(rstring)
return ''.join(ss)
def strB2Q(ustring):
"""把字串全形轉半形"""
ss = []
for s in ustring:
rstring = ""
for uchar in s:
inside_code = ord(uchar)
if inside_code == 32: # 全形空格直接轉換
inside_code = 12288
elif (inside_code >= 33 and inside_code <= 126): # 全形字元(除空格)根據關係轉化
inside_code += 65248
rstring += chr(inside_code)
ss.append(rstring)
return ''.join(ss)
if __name__ == '__main__':
a = strB2Q("你好pythonabdalduizxcvbnm")
print(a)
b = strQ2B(a)
print(b)