python 사전 작업 실례 상세 설명

3130 단어 python자전.
본 논문 의 사례 는 python 사전 작업 사례 의 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import turtle
 
##    ##
#        
count = 10
#      -  y   
data = []
#    -  x   
words = []
#y       -            
yScale = 6
#x       -    count      
xScale = 30
 
################# Turtle Start #################### 
#  (x1,y1) (x2,y2)    
def drawLine(t, x1, y1, x2, y2):
  t.penup()
  t.goto (x1, y1)
  t.pendown()
  t.goto (x2, y2)
 
#    (x,y)    
def drawText(t, x, y, text):
  t.penup()
  t.goto (x, y)
  t.pendown()
  t.write(text)
 
def drawGraph(t):
  #  x/y  
  drawLine (t, 0, 0, 360, 0)
  drawLine (t, 0, 300, 0, 0)
 
  #x :      
  for x in range(count):
    x=x+1 #     ,        
    drawText(t, x*xScale-4, -20, (words[x-1]))
    drawText(t, x*xScale-4, data[x-1]*yScale+10, data[x-1])
  drawBar(t)
 
#      
def drawRectangle(t, x, y):
  x = x*xScale
  y = y*yScale#      
  drawLine(t, x-5, 0, x-5, y)
  drawLine(t, x-5, y, x+5, y)
  drawLine(t, x+5, y, x+5, 0)
  drawLine(t, x+5, 0, x-5, 0)
   
#      
def drawBar(t):
  for i in range(count):
    drawRectangle(t, i+1, data[i])  
################# Turtle End ####################
 
     
#              
def processLine(line, wordCounts):
  #         
  line = replacePunctuations(line)
  #         
  words = line.split() 
  for word in words:
    if word in wordCounts:
      wordCounts[word] += 1
    else:
      wordCounts[word] = 1
 
#         
def replacePunctuations(line):
  for ch in line:
    if ch in "~@#$%^&*()_-+=<>?/,.:;{}[]|\'""":
      line = line.replace(ch, " ")
  return line
 
def main():
  #         
  filename = input("enter a filename:").strip()
  infile = open(filename, "r")
   
  #            
  wordCounts = {}
  for line in infile:
    processLine(line.lower(), wordCounts)
     
  #         
  pairs = list(wordCounts.items())
 
  #           ,     
  items = [[x,y]for (y,x)in pairs] 
  items.sort() 
 
  #  count      
  for i in range(len(items)-1, len(items)-count-1, -1):
    print(items[i][1]+"\t"+str(items[i][0]))
    data.append(items[i][0])
    words.append(items[i][1])
     
  infile.close()
   
  #           
  turtle.title('       ')
  turtle.setup(900, 750, 0, 0)
  t = turtle.Turtle()
  t.hideturtle()
  t.width(3)
  drawGraph(t)
  turtle.done()
     
#  main()  
if __name__ == '__main__':
  main()
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기