반응형
반응형

sorted, 문자열 길이로 정렬, 한글 정렬

the_list.sort() # sorts normally by alphabetical order
the_list.sort(key=len, reverse=True) # sorts by descending length


the_list.sort(key=lambda item: (-len(item), item))




#########################################


n = ['aaa', 'bbb', 'ccc', 'dddd', 'dddl', 'yyyyy']

for i in reversed(sorted(n, key=len)):
       print i
       
       
for i in sorted(n, key=len, reverse=True):
        print i

 

-Sort your list by alpha order, then by length.

See the following exmple:

>>> coursesList = ["chemistry","physics","mathematics","art"]
>>> sorted(coursesList,key=len)
['art', 'physics', 'chemistry', 'mathematics']
>>> coursesList.append("mopsosa")
>>> sorted(coursesList,key=len)
['art', 'physics', 'mopsosa', 'chemistry', 'mathematics']
>>> coursesList.sort()
>>> sorted(coursesList,key=len)
['art', 'mopsosa', 'physics', 'chemistry', 'mathematics']
반응형
반응형

‘넷플릭스법’ 닷새 만에 구글 ‘먹통’…정부 “자료 제출해라”

유튜브・지메일・구글플레이 등 구글의 주요 서비스가 14일 오후 한때 먹통이 되면서 이용자들이 큰 불편을 겪었다. 이에 정부는 이달 개정한 ‘전기통신사업법 시행령(일명 넷플릭스법)’을 구글에 처음으로 적용하고, 사실관계 확인에 나설 예정이다.

15일 과학기술정보통신부는 지난 10일부터 시행된 전기통신사업법 시행령에 따라 구글에 서비스 장애가 발생한 원인을 파악하기 위해 관련 사실 및 조치사항에 관한 자료 제출을 요청했다고 밝혔다. 구글이 이 같은 사태를 방지하기 위한 각종 조치를 제대로 수행했는지에 대해 집중적으로 살펴볼 것으로 보인다.

유튜브 오류 대란 또…구글 공식 사과

 

앞서 유튜브・지메일・구글플레이・클라우드・문서도구・지도 등 구글 계정 접속이 필요한 서비스들은 지난 14일 오후 8시47분부터 약 45분간 먹통이 됐다. 이용자들은 트위터 등 사회관계망서비스(SNS)를 통해 불편을 호소했다. 특히 구글의 인공지능(AI) 스피커인 ‘구글 홈’에 각종 사물인터넷(IoT) 기능을 연동했던 이용자들은 조명과 에어컨, TV, 난방 시스템 등을 조작하는 데도 어려움을 겪어야 했다. 구글에 따르면 이번 오류는 구글 내부 저장 용량 문제로 인한 인증 시스템 장애가 원인이었다.

유튜브는 지난달 12일에도 2시간 가량 전세계적으로 접속 오류 사태를 겪은 바 있다. 불과 한 달 만에 이 같은 사태가 재발됐지만, 구글은 두 차례 모두 문제 발생 직후 공식 트위터를 통해 영어로만 관련 사항을 공지해왔다.

구글은 15일 오전 10시경 공식 입장을 통해 “사용자 로그인이 필요한 서비스에서 높은 에러율이 발생했다. 현재는 모든 서비스가 복원됐다”며 “향후 해당 문제가 재발하지 않도록 철저한 검토를 진행하도록 하겠다. 불편을 겪은 모든 이용자 여러분께 사과의 말씀 드린다”고 전했다.

넷플릭스법 앞에 선 구글

이번 사태로 구글은 이른바 ‘넷플릭스법’이 시행된 지 닷새 만에 첫 적용을 받게 됐다. 개정된 법에 따르면 국내에서 100만 가입자 이상, 트래픽 상위 1% 이상을 차지하는 구글 등 부가통신사업자는 서비스 안정수단 확보를 위해 △기술적 오류 방지 △과도한 트래픽 집중 방지 △트래픽 양 변동 대비 조치 및 필요한 경우 관련 사업자와 협의 등의 조치를 해야 한다. 또, 이용자 요구사항에 대응하기 위해 △온라인·ARS시스템 확보 △서비스 사전점검·일시중단·속도저하 등 이용자에게 서비스 안정성 상담 제공을 위한 연락처 고지 등을 갖춰야 한다. 서비스 안전성 확보 조치 위반 시 과기정통부로부터 시정명령과 함께 1000만원 이하 과태료를 부과 받을 수 있다.

이에 대해 과기정통부 관계자는 “구글의 장애가 발생한 원인을 파악하기 위해 관련 사실 및 조치사항에 관한 자료 제출을 요청했다. 또 서비스 중단 사실을 국내 이용자에게 한국어로 공지하도록 조치했다”며 “앞으로 사실관계 파악 후 필요 시 전기통신사업법 시행령에 따른 필요한 조치를 검토하겠다”고 말했다.

한편, 이용자들은 구글 서비스 먹통 사태로 인해 피해를 입었어도 보상을 받기는 힘들 전망이다. 현행법상 구글 등 부가통신사업자는 4시간 이상 오류가 발생했을 시 손해배상을 할 수 있다. 구글・유튜브 약관에도 보상에 대한 규정은 따로 나와 있지 않다.

 

 

www.bloter.net/archives/487477

 

‘넷플릭스법’ 닷새 만에 구글 ‘먹통’…정부 “자료 제출해라”

유튜브・지메일・구글플레이 등 구글의 주요 서비스가 14일 오후 한때 먹통이 되면서 이용자들이 큰 불편을 겪었다. 이에 정부는 이달 개정한 ‘전기통신사업법 시행령(일명 넷플릭스법)’을

www.bloter.net

 

반응형
반응형

가슴을 활짝 열고 실패를 받아들여라
당신이 만일 아주 신경을 써 실패 확률을 ‘0’으로 만든다면,
아마 십중팔구 성공 가능성 역시 ‘0’이 될 것이다.
실패, 특히 아주 쓰라린 실패는 도움이 된다.
실패를 통해 겸손함을 유지하는 법과 객관성을 유지하는 법을
배울 수 있기 때문이다.
- 링크드인 창업자, 리드 호프만


실패는 옆으로 빠지는 곁길이 아니라, 성공으로 향하는 징검다리입니다.
사업도 마찬가지입니다. 가장 좋은 아이디어들이 떠오르는 건
대개 거절, 실망, 불발, 의심, 저항과 같은 것들과 부딪힌 뒤의 일입니다.
실패는 곧 배움입니다.
큰 성공을 위해선 가슴을 활짝 열고 실패가 보내는 초대장을 받아들여야 합니다.

반응형
반응형

혹시
지금 가고 있는 길이
올바른 길인지 자꾸 의심이 간다면
'돈키호테'를 펼쳐보길 권합니다. 물론
그 안에 찾고자 하는 정답은 없습니다. 하지만
살다 보면 정답 대신 동문서답이 큰 위안이 될
때가 있습니다. 삶에 정답이란 없음을 깨달은
세르반테스가 돈키호테란 동문서답을
세상에 내놓은 이유입니다.


- 박광혁의《히포크라테스 미술관》중에서 -


* 세르반테스의 '돈키호테'는
해학과 풍자로 가득한 공상 소설입니다.
현실을 무시한 듯한 행동과 모험으로 엉뚱하기
짝이 없고 모든 것이 동문서답처럼 보입니다.
그러나 사실은 그 안에 인간의 진면목이
칼끝 같은 문장으로 잘 그려져 있습니다.
재미도 있고, 위로도 받고, 잃었던
인생의 길도 다시 찾습니다.

 

반응형

'아침편지' 카테고리의 다른 글

건성으로 보지 말라  (0) 2020.12.17
짧은 치마, 빨간 립스틱  (0) 2020.12.16
대배우 신영균과 그의 어머니  (0) 2020.12.14
인생이라는 파도  (0) 2020.12.14
감(感)이 오면 얼른 시작하라  (0) 2020.12.11
반응형

코로나 시대 이후 점차 적응되어 가는 화상회의

올해 들어서 유독 화상회의 관련 프로그램들을 써볼 기회들이 많았습니다. 대표적인 zoom부터, 구글 미팅, 시스코 webex, 마이크로소프트 팀즈 까지 대표적인 IT업체들의 프로그램들을 써볼 수 있었던 것 같습니다. 그중에서도 제일 높은 빈도를 꼽자면 zoom이 단연 1등이 아닐까 싶습니다. 한 주에도 몇 번씩 줌을 쓰고 있으니 말이죠.

 

▶ 언택트(Untact): 비대면, 대면 없이 구매와 소비가 이루어지는 것
▶ 온택트(Ontact): 온라인을 통한 외부와의 연결, 대면을 최소화하며 온라인을 통해 소통하는 것 


최근에는 두 단어가 혼용되어 사용되는 경우가 많다. 서로 다른 의미를 나타내는 것처럼 사용되고 있지만 사실 알고 보면 '온라인', '비대면'이라는 맥락에서 두 단어는 다르면서도 같은 의미로 사용될 수 있다. 



예를 들어 설명하자면 '쿠팡', 'Gmarket' 등 사이트를 통해 누군가와의 소통 없이 물건을 주문하는 것, 맥도널드와 같은 음식점에서 키오스크(kiosk, 주문하는 기계)를 통해 주문하는 것은 언택트라고 할 수 있고, 최근 오프라인 매장에 진열된 상품을 실시간 방송으로 소개하며 소비자와 댓글로 소통하는 라이브 커머스(Live Commerce), 줌(zoom)이나 웹엑스(Webex) 등을 통한 실시간 강의는 온택트라 할 수 있다.



이 단어들 모두 코로나로 인해 수면 위로 올라와 부각된 단어들로 처음 듣는 사람들은 어렵고 생소할 수 있다. 하지만 큰 맥락에서 두 단어의 사용 범위가 비슷하기 때문에 '비대면'에 사용되는 단어라고만 알고 있어도 정보 해독(解讀)에 도움이 될 것이다. 

 

반응형
반응형

큰 txt파일을 읽으면 메모리 문제 발생하기때문에 분할해서 단어장 처리. 

 

import os
import sys
import konlpy
import pandas as pd
import numpy as np
os.environ['JAVA_OPTS'] = 'Xmx4096M'

import itertools

import mr #local module

file_name = "test_export_mentions_2020-11-17_title.txt"
#file_name = "test_export_mentions_2020-11-17_title_utf8.txt"  #test
file_out  = "outputfile"
lines_tot = mr.file_len(file_name)
filesize  = mr.getfilesize(file_name) * 1000
print("파일명 : ", file_name)
print("줄 개수 : ", lines_tot)
print("파일사이즈 : ", filesize)

f = open(file_name,'r', encoding='utf-8')
numbits  = 1000000
loop_num = round(os.stat(file_name).st_size/numbits+1)+1

print(os.stat(file_name).st_size/numbits+1)
print(loop_num)

for i in range(0, loop_num):
    o = open('./input/'+file_out+str(i)+'.txt','w', encoding='utf-8')
    segment = f.readlines(numbits)
    for c in range(0,len(segment)):
        o.write(segment[c]+"\n")
    o.close()


 
import itertools

def f_append(text):
    sign = 'N'
    #기존 파일의 단어를 가져와서 신규 단어가 있는지 확인
    with open('./replace_word.txt','r',encoding='utf-8') as f:
        list_word = f.read().strip().split('\n')
        for line in list_word:
            if line == text:
                sign = 'Exist'
                #print('Exist')
        '''
        list_word = f.read()
        if list_word.find(text) >=0:
            sign = 'N'
            print('Exist')
        '''
    if sign == 'N':
        #기존 파일에 단어추가
        with open('./replace_word.txt', 'a', encoding='utf-8') as myfile:
            myfile.write(text)
            myfile.write('\n')
            sign = 'Yes'

    return sign

def f_list():
    #단어파일을 list로 리턴
    with open('./replace_word.txt','r',encoding='utf-8') as f:
        list_word = f.read().strip().split('\n')
    return list_word

def f_del(text):
    #입력받은 단어를 삭제
    sign = 'N'
    matrix = []
    with open('./replace_word.txt','r',encoding='utf-8') as f:
        dic = f.read().strip().split('\n')

    for word in dic:
        if word != text:
            matrix.append(word)
        else:
            sign = 'Del';
    print(sign)
    print(dic)

    if sign == 'Del':
        with open('./replace_word.txt', 'w', encoding='utf-8') as myfile:
            #myfile.write(matrix)
            for line2 in matrix:
                print(line2)
                myfile.write(line2)
                myfile.write('\n')
            sign = 'Y'

    return sign
반응형

+ Recent posts