Difference between revisions of "Python: String Operation"
Jump to navigation
Jump to search
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
(One intermediate revision by the same user not shown) | |||
Line 51: | Line 51: | ||
print " ".join(line.strip() for line in f) | print " ".join(line.strip() for line in f) | ||
f.close() | f.close() | ||
+ | |||
+ | |||
+ | ==Frequency word== | ||
+ | |||
+ | list1 = [] #this is your original list of words | ||
+ | list2 = [] #this is a new list | ||
+ | |||
+ | for word in list1: | ||
+ | if word in list2: | ||
+ | list2.index(word)[1] += 1 | ||
+ | else: | ||
+ | list2.append([word,0]) | ||
+ | |||
+ | Or, more efficiently: | ||
+ | |||
+ | for word in list1: | ||
+ | try: | ||
+ | list2.index(word)[1] += 1 | ||
+ | except: | ||
+ | list2.append([word,0]) | ||
+ | |||
+ | |||
+ | ==Frequency word== | ||
+ | |||
+ | from collections import Counter | ||
+ | import re | ||
+ | |||
+ | words = re.findall(r'\w+', open('hasilbrowsepilkadadki.txt').read().lower()) | ||
+ | Counter(words).most_common(10) | ||
+ | [('the', 1143), ('and', 966), ('to', 762), ('of', 669), ('i', 631), | ||
+ | ('you', 554), ('a', 546), ('my', 514), ('hamlet', 471), ('in', 451)] |
Latest revision as of 06:38, 2 February 2017
Strip /n
- line.strip() - remove all types of whitespaces from both ends of the line.
- line.rstrip("\n") remove only the trailing "\n".
Hitung banyak word
len(string.split())
Join Line
Pakai str.join:
with open('file.txt') as f: print " ".join(line.strip() for line in f)
Remove specific line
f = open("yourfile.txt","r") lines = f.readlines() f.close() f = open("yourfile.txt","w") for line in lines: if line!="nickname_to_delete"+"\n": f.write(line) f.close()
Percobaan
namafile = "yourfile.txt" f = open(namafile,"r") lines = f.readlines() f.close() f = open(namafile,"w") for line in lines: if len(line.split())>1: f.write(line) f.close()
f = open(namafile,"r") print " ".join(line.strip() for line in f) f.close()
Frequency word
list1 = [] #this is your original list of words list2 = [] #this is a new list for word in list1: if word in list2: list2.index(word)[1] += 1 else: list2.append([word,0])
Or, more efficiently:
for word in list1: try: list2.index(word)[1] += 1 except: list2.append([word,0])
Frequency word
from collections import Counter import re
words = re.findall(r'\w+', open('hasilbrowsepilkadadki.txt').read().lower()) Counter(words).most_common(10)
[('the', 1143), ('and', 966), ('to', 762), ('of', 669), ('i', 631),
('you', 554), ('a', 546), ('my', 514), ('hamlet', 471), ('in', 451)]