문제를 다른 방법으로 풀면 풀리기는 하는데, 이 방법이 어떻게 잘못됐는지 잘 모르겠습니다. import sys sys.stdin = open ( "input.txt" , "rt" ) #sys.stdin = open("input.txt", "rt") arr_ = [ list ( map ( int , input ().split())) for _ in range ( 9 )] brr = [] flag = "YES" dx = [- 1 , 0 , 1 , 0 ] dy = [ 0 , 1 , 0 , - 1 ] ################ 행 , 열 검사하는 내용 ################## for i in range ( 9 ): brr.clear() for j in range ( 9 ): brr.append(arr_[i][j]) if len ( set (brr)) != 9 : flag = "NO" break ################################################# ################## 3x3 검사하는 내용 ##################### if flag == "NO" : print (flag) else : for i in range ( 0 , 7 , 3 ): brr.clear() for j in range ( 0 , 7 , 3 ): ########### 문제의 코드 ############ brr.append(arr_[i][j]) brr.append(arr_[i][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 brr.append(arr_[i + 2 *dx[ 2 ]][j]) # 다음줄 시작점 brr.append(arr_[i + 2 *dx[ 2 ]][j + k*dy[ 1 ]] for k in range ( 1 , 3 )) # 우측 ########### 문제의 코드 ############ if len ( set (brr)) != 9 : flag = "NO" print (flag) break if flag == "YES" : print (flag) 제가 생각했던건 arr_ 을 스도쿠 맵이라고 하고 각 행과 열, 3x3 리스트의 숫자들을 각각 brr이라는 리스트에 추가해서 마지막에 brr을 set으로 중복 없앤 뒤, 길이가 9가 아니라면 no라고 하였습니다. 그런데 ##문제의 코드## 에서 옳지 않은 값이 들어가는 것 같습니다. (이 부분은 3x3 리스트의 값을 체크하는 식입니다) 저는 처음에 3x3 안의 값들을 brr에 추가하기 위해서 brr.append를 하고 안에다 arr[i][j]의 원소 값들을 넣으려고 했습니다. 그런데 디버깅을 해보니까 원소의 값들에 접근할 때, dx와 k * dy + for 문에서 이상한 값이 들어가는 것 같습니다. 왜 이상한 값이 들어가는지 알 수 있을까요?
첫 실습 문제 2번의 코드를 보면 (k번째 작은 수 찾기) import sys sys.stdin= open ( "input.txt" , "rt" ) x = int ( input ()) for i in range (x): n , s , e , k = map ( int , input ().split()) ins = list ( map ( int , input ().split())) ins = ins[s- 1 :e] ins.sort() print ( "#%d %d" %(i+ 1 , ins[k- 1 ])) 이와 같은데, 마지막 print문을 보면 for문이 끝날때마다 출력이 한번씩 되어야하는거 아닌가요? 이게 파일로 입력을 받아서 프린트가 다 끝나고 한번에 나오는건지, 혹시 그렇다면 만약 파일로 입력을 받지 않고 직접 콘솔에 타이핑해서 입력하면 for문에서 입력할때마다 출력문이 바로 나오는건지 궁금합니다. (강의를 보면 위와 같은 코드로 실행시키고, input 텍스트 파일에 값을 넣었을때, 정답이 #1 #2가 한번에 출력이 됩니다.)
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요. 끝까지 수강하기위해 노력중인 수강생이에요.. 마지막갈수록 어려워지는건 기분탓일까요.. Open API를 사용해서 랭킹, 제목, 링크까지 뽑아내는건 성공했습니다. 그런데 동영상 13분 30초에서도 보면 title로 뽑아낸 자료들에 전부 <b> </b> 태그가 붙는데 이 태그를 없애는 방법이 따로 있나요? 전에 썼던것 처럼 get_text 이런걸 써주면 해결되는 부분인가요? 제가 나름대로 get_text 를 써서 리스트 안에 넣어봤는데 안되더라구요. 어찌해야할까요?
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
이게 제가 현재 쳐놓은 코드입니다. 네이버 자체의 코드가 살짝 바뀌어서 그대로 적용을 했는데, 나오지가 않더라구요. 이거 하기전에 bs4, requests 모듈은 설치를 완료한 상태고, 다음 크롤링에서는 잘 됐는데, 왜 여기서는 안되는건지 제가 잘못한 부분이 있나 한번 봐주시겠어요? 되다가 갑자기 안되니까 뭐가 잘못된지 잘 모르겠어서 당황스럽네요.
제가 학교에서는 ,apmsetup으로 했는데 거기서도 비밀번호 맞는데도 제대로 쳤는데도 커맨드창이 꺼지고 여기서도 설치하는과정에서 비밀번호 설정해서 check까지했는데도 work bench들어가서 connection할려고하니 연결이 안되네요 .... 진짜 왜이런거죠? 교수님께서는 지우고 다시 삭제하라했는데 apm setup도 mysql도 다 지우고해도 둘다 똑같은 현상이 반복되니 정말 답답하네요 ㅠㅠ 그리고 다시 설치할때 경로가 이미있는데 설치하시겠습니까 나오길래 예스했습니다 다음날인 지금도 아침부터 계속하는데 mysql은 삭제하려면 구글에 쳐보니 레스트리편집기에서 관련된걸 다 삭제해야한다해서 다 삭제후 재설치하는과정에서 오류뜹니다 여기 사진을 어떻게올리는지 ..ㅠㅠ
https://www.notion.so/bff1425f2f1b4bf2bf505d2a1024f837 1권 4번문제입니다 답안에는 3) 입력 : a = [1, 2, 3], 출력 : class 'list' 라고 적혀있지만 문제에는 3) 입력 : a = 'p', 출력 : class 'char' 으로 적혀있습니다 답안지를 3) 입력 : a = 'p', 출력 : class 'str'이 맞는 출력값이므로 3) 입력 : a = 'p', 출력 : class 'char'은 잘못되어 정답은 '3번' 입니다 로 수정해야하지 않을까 싶습니다
트위치에서 페이지 검사를 해 보니 제목이랑 날짜를 감싸고 있는 태그가 <p class="tw-font-size-4 tw-strong"> 이렇게 바뀌어 있어서, 클래스 이름 부분만 바꿔서 코드를 돌렸는데 작동이 안 되네요. 그런데 예시처럼 "tw-flex"로 클래스 이름을 검색하면 작동이 됩니다. "tw-flex"라는 클래스 이름을 가진 태그가 페이지에 없는데, 왜 이렇게 작동하는지 설명해 주시면 감사하겠습니다~~ 그리고 늘 유익한 강의영상으로 큰 도움 받고 있어요. 감사합니다~