Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # 00. 文字列の逆順
- # 文字列"stressed"の文字を逆に(末尾から先頭に向かって)並べた文字列を得よ.
- print("#00")
- str = "stressed"
- print("".join(reversed(str)))
- # 01. 「パタトクカシーー」
- # 「パタトクカシーー」という文字列の1,3,5,7文字目を取り出して連結した文字列を得よ.
- print("#01")
- str = "パタトクカシーー"
- print(str[0::2])
- # 02. 「パトカー」+「タクシー」=「パタトクカシーー」
- # 「パトカー」+「タクシー」の文字を先頭から交互に連結して文字列「パタトクカシーー」を得よ.
- print("#02")
- str1 = "パトカー"
- str2 = "タクシー"
- ret = ""
- for (s1, s2) in zip(str1, str2):
- ret += s1 + s2
- print(ret)
- # 03. 円周率
- # "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics."という文を単語に分解し,各単語の(アルファベットの)文字数を先頭から出現順に並べたリストを作成せよ.
- print("#03")
- from collections import OrderedDict
- str = "Now I need a drink, alcoholic of course, after the heavy lectures involving quantum mechanics"
- ret = OrderedDict()
- for s in str:
- if s == ' ' or s == ',' or s == '.':
- continue
- if s not in ret.keys():
- ret[s] = 0
- ret[s] += 1
- print(ret)
- # 04. 元素記号
- # "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."という文を単語に分解し,
- # 1, 5, 6, 7, 8, 9, 15, 16, 19番目の単語は先頭の1文字,それ以外の単語は先頭に2文字を取り出し,取り出した文字列から単語の位置(先頭から何番目の単語か)への連想配列(辞書型もしくはマップ型)を作成せよ.
- print("#04")
- str = "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can."
- arr = str.split(' ')
- ret = {}
- targetIndex = [1, 5, 6, 7, 8, 9, 15, 16, 19]
- for i in range(0, len(arr)):
- if i in targetIndex:
- ret[arr[i][0]] = i
- else:
- ret[arr[i][0:2]] = i
- print(ret)
- # 05. n-gram
- # 与えられたシーケンス(文字列やリストなど)からn-gramを作る関数を作成せよ.この関数を用い,"I am an NLPer"という文から単語bi-gram,文字bi-gramを得よ.
- print("#05")
- str = "I am an NLPer"
- def ngramchar(n, s):
- ret = []
- for i in range(len(s) - (n - 1)):
- ret.append(s[i:i+n])
- return ret
- print(ngramchar(2, str))
- def ngramword(n, s):
- arr = s.split()
- ret = []
- for i in range(len(arr) - (n - 1)):
- tmp = ""
- for j in range(n):
- tmp += arr[i+j]
- ret.append(tmp)
- return ret
- print(ngramword(2, str))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement