Python 官网:https://www.python.org/
-
Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
—— 华罗庚
![等风来,不如追风去……](https://i-blog.csdnimg.cn/blog_migrate/4a8b43fa255f3b54c491f1a1b49b890d.jpeg)
-
一、打印音标字符表
-
二、音标输入代码run效果
一、音标字符准备
网络搜索的含音标字符的字符串段落
2.48个国际音标字符
2.1. 20个元音
/ɑ:/ /ʌ/ /ɔ:/ /ɒ/ /ə/ /ɜ:/ /i:/ /ɪ/ /u:/ /ʊ/ /e/ /æ/ /eɪ/ /aɪ/ /ɔɪ/ /ɪə/ /eə/ /ʊə/ /əʊ/ /aʊ/2.2. 28个辅音
/p/ /b/ /t/ /d/ /k/ /g/ /f/ /v/ /s/ /z/ /θ/ /ð/ /ʃ/ /ʒ/ /tʃ/ /dʒ/ /tr/ /dr/ /ts/ /dz/ /m/ /n/ /ŋ/ /h/ /l/ /r/ /j/ /w/
从字符串段落中提取的48个音标字符
ɑ: ʌ ɔ: ɒ ə ɜ: i: ɪ u: ʊ e æ eɪ aɪ ɔɪ ɪə eə ʊə əʊ aʊ p b t d k g f v s z θ ð ʃ ʒ tʃ dʒ tr dr ts dz m n ŋ h l r j w
Python提取音标详细代码
#!/usr/bin/nve python
# coding: utf-8
'''
filename = 'add_new_word.py'
author = 'dream efl'
time = '2022-08-09'
'''
import re
def find_symbol(re_s, s):
symbol = re.findall(re_s, s) # re从字符串段落中提取音标字符。可能是我的re版本已经默认忽略\n,可以隔行搜索匹配,都不用加re.M参数了。😋
return ' '.join(symbol)
if __name__ == '__main__':
s = '''2. 48个国际音标字符
2.1. 20个元音
/ɑ:/ /ʌ/ /ɔ:/ /ɒ/ /ə/ /ɜ:/ /i:/ /ɪ/ /u:/ /ʊ/ /e/ /æ/ /eɪ/ /aɪ/ /ɔɪ/ /ɪə/ /eə/ /ʊə/ /əʊ/ /aʊ/
2.2. 28个辅音
/p/ /b/ /t/ /d/ /k/ /g/ /f/ /v/ /s/ /z/ /θ/ /ð/ /ʃ/ /ʒ/ /tʃ/ /dʒ/ /tr/ /dr/ /ts/ /dz/ /m/ /n/ /ŋ/ /h/ /l/ /r/ /j/ /w/'''
symbol = find_symbol(r"/(\w*[\:]*)/", s)
print(f"\n从字符串段落中提取的{len(symbol.split()):>3} 个音标字符:\n{symbol}\n")
提取音标字符代码运行效果截屏图
可能是我的Python 3.10.2 环境re 2.2.1版本已经默认忽略\n,可以隔行搜索匹配,都不用加re.M参数了。😋
打印音标字符“表”方法代码
def symbol_show(self):
print(f"\n{self.color(' 音标表 '.center(47, '~'), 92)}\n{'':>10}", end='')
for k,i in enumerate(self.symbol.split()):
print(f"{k:>2}.{self.color(f'{i:>2}', 92)}", end=' ')
if (k+1)%5 == 0: print(f"\n{'':>10}", end='')
print()
print(self.color(' 请输入对应的数字 '.center(42, '~'), 32))
print(self.color('如:21 14 (bɔɪ)'.center(48), 100, 7, 30))
替换序号成音标字符方法代码
def replace_symbol(self, nums):
''' 从音标字符序号还原音标字符 '''
tem = []
symbol = self.symbol.split()
for i in nums:
tem.append(symbol[int(i)])
return ''.join(tem)
单词信息打印方法代码
def word_show(self, word):
''' 单词信息列印 '''
for m,n in zip(self.field.split(), word):
if not n: continue
if m == '音标': n = f"英/{n}/"
print(f"{'':>6}{m}:{n}")
变量及色彩控制打印工具准备
def __init__(self):
from lib.mypycolor import Color
self.color = Color().set_color # 设置色彩控制打印工具方法别名。
self.field = '单词 复数 音标 词性+释义一 词性+释义二 词性+释义三 词性+释义四'
self.demo = 'boy boys bɔɪ n.男孩;儿子;小伙子,家伙; interj. 好家伙(表示激动、羡慕等情感);'
self.symbol = "ɑ: ʌ ɔ: ɒ ə ɜ: i: ɪ u: ʊ e æ eɪ aɪ ɔɪ ɪə eə ʊə əʊ aʊ p b t d k g f v s z θ ð ʃ ʒ tʃ dʒ tr dr ts dz m n ŋ h l r j w \'"
代码实现效果截屏图
非常遗憾,重音符号在Python环境显示有些怪异:
因此我就用英文单引号(ord(“'”)=39)做读音节,舍弃了次重读符号。因为712、716在我的手机上显示“怪异”,次重读音节用英文逗号“,”,也不太好看,虽然有不少人是这么干的。
上面截屏图片代码
print(chr(int('2c8', 16)), chr(int('2cc', 16)))
print(f"ˈ -> {ord('ˈ')},ˌ -> {ord('ˌ')}")
print("'", '->', ord("'"))
__上一篇:__ Python.迭代器对象iter()
__下一篇:__ 十六进制字符串转Python代码
我的HOT博:
- Hot:回车符、换行符和回车换行符(1002阅读)
- Hot:Linux 脚本文件第一行的特殊注释符(井号和感叹号组合)的含义(1017阅读)
- pandas 数据类型之 Series(1099阅读)
- 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )(1226阅读)
- 练习:银行复利计算(用 for 循环解一道初中小题)(1111阅读)
- pandas 数据类型之 DataFrame(1765阅读)
- Hot:班里有人和我同生日难吗?(蒙特卡洛随机模拟法)(2125阅读)
- Python字符串居中显示(1792阅读)
- 练习:求偶数和、阈值分割和求差( list 对象的两个基础小题)(1660阅读)
- 用 pandas 解一道小题(1988阅读)
- 可迭代对象和四个函数(1078阅读)
- “快乐数”判断(1245阅读)
- 罗马数字转换器(构造元素取模)(1984阅读)
- Hot:罗马数字(转换器|罗生成器)(4302阅读)
- Hot:让QQ群昵称色变的代码(33047阅读)
- Hot:斐波那契数列(递归| for )(4060阅读)
- 柱状图中最大矩形(1661阅读)
- 排序数组元素的重复起止(1253阅读)
- 电话拨号键盘字母组合(1380阅读)
- 密码强度检测器(1889阅读)
- 求列表平衡点(1827阅读)
- Hot: 字符串统计(4299阅读)
- Hot:尼姆游戏(聪明版首发)(3459阅读)尼姆游戏(优化版)(1074阅读)
推荐条件
点阅破千
![老齐漫画头像](https://i-blog.csdnimg.cn/blog_migrate/8cbf2c45d8b57205b31ef4963b3b9854.jpeg)
精品文章:
- 好文力荐:《python 完全自学教程》齐伟书稿免费连载
- OPP三大特性:封装中的property
- 通过内置对象理解python'
- 正则表达式
- python中“*”的作用
- Python 完全自学手册
- 海象运算符
- Python中的 `!=`与`is not`不同
- 学习编程的正确方法
来源:老齐教室
Python 入门指南【Python 3.6.3】
好文力荐:
-
全栈领域优质创作者——寒佬(还是国内某高校学生)好文:《非技术文—关于英语和如何正确的提问》,“英语”和“会提问”是学习的两大利器。