日语分词方法

1. Mecab (github)

# 安装mecab
!brew install mecab
!brew install mecab-ipadic
!pip install mecab-python3

import MeCab
mecab = MeCab.Tagger ("-Owakati")
parsed = mecab.parse('麩菓子は、麩を主材料とした日本の菓子。').split()
print(parsed)

2. Fugashi (github)

# 安装fugashi 
pip install fugashi 
# 安装字典 
pip install ipadic


import fugashi
import ipadic
import os

mecab_dic = "ipadic"
dic_dir = ipadic.DICDIR
mecabrc = os.path.join(dic_dir, "mecabrc")
mecab_option = f'-d "{dic_dir}" -r "{mecabrc}"'
mecab = fugashi.GenericTagger(mecab_option)
print(mecab('麩菓子は、麩を主材料とした日本の菓子。'))
0

shell if 条件语句

  1.  文件/文件夹判断
    • -e filename 如果 filename存在,则为真
    • -d filename 如果 filename为目录,则为真
    • -r filename 如果 filename可读,则为真
    • -w filename 如果 filename可写,则为真
    • -x filename 如果 filename可执行,则为真
#如果文件夹不存在,创建文件夹
if [ ! -d myfolder ]; then
  mkdir myfolder
fi

#如果文件存在,删除文件
if [ ! -e file ]; then
  rm -f file
fi

#如果test.sh没有执行权限,加上执行权限
if [ ! -x test.sh ]; then
  chmod a+x test.sh
fi
2. 整数变量表达式
    • -eq 等于
    • -ne 不等于
    • -gt 大于
    • -ge 大于等于
    • -lt 小于
    • -le 小于等于
#!/bin/bash
# helper for creating data.
for i in $(seq 1 96) # 96 cores
do
        let front=i*22-22
        if [ $front -gt 2047 ]
        then
                break
        fi
        let back=i*22-1
        if [ $back -gt 2047 ]
        then
                let back=2047
        fi
        nohup bash create_pretraining_data_512_script $front $back >$front-$back.out 2>&1 &
        echo "$front-$back is running"
done
3. 字符串变量表达式
    • if  [ $string ]               如果string 非空,返回真
    • if  [ $a = $b ]           如果a等于b,则为真
    • if  [ $a !=  $b ]         如果a不等于b,则为真
if [ $1 = "SST-2" ]
then
        task_name="SST"
else
        task_name=$1
fi
echo $task_name
0