print(all([1, 2, "안녕"])) #all은 반복가능한 자료형은 입력으로 받고 모두 참이면 true 하나라도 거짓이면 false다 #그럼 0 이 들어가면 false인가>?? #아 false로 나오네... print(all([0])) #신기한건 빈건 true로 나온는데 말이지 신기하네 ... print(all([])) print(all(())) print(all({})) print(all(""))
#all의 반대로 any가 있음!! 하나라도 참이면 true print(any([0, 1, [], "", {}, ()])) #그래서 전부 false가 나온다. print(any([])) print(any([()])) print(any([{}])) print(any([""])) #숫자 -> 아스키 코드 chr을 사용하면 된다. print(chr(97)) # a #이거 신기하다 dir은 객체가 자체적으로 갖고 있는 변수나 함수를 보여준다. #종류에 따라 다름! 리스트이라던지 tuple이라던지 dictionary이라던지 #-> 위에 있는거 구분이 안가니 현재 다시 공부해야함! 2021_02_18
print(dir([1, 2, 3])) divmod(a,b) #-> 숫자 2개 입력 받아서 몫과 나머지를 튜플 형식으로 돌려주는거! (a//b,a%b)
enumerate #-> 리스트 튜플 문자열을 입력으로 받으면 인덱스 값을 포함하는 객체로 돌려준다?? #???왜 인지 모르지만 {} 이건 0 삼 1 일 2 이 이렇게 출력이 됨 뭐지...????? #abc로 하니까 cba인데 왜죠? #abc로 하니까 cab인데 왜죠????? ????????? #아 내가 딕셔너리를 그냥 key 만 쓰고 value를 입력안해서 그렇군... #그래서 수정하니까 key 로 print 해주네네 arr = {'일': 1, '이': 2, '삼': 3} arr2 = ['one', 'two', 'three'] -> list 릿스트 형 arr3 = ('hi', 'hello', 'bye') -> 튜플 for i, num in enumerate(arr): print(i, num) for i, num in enumerate(arr2): print(i,num) for i, num in enumerate(arr3): print(i,num)
eval은 입력받은 문자열로!! 클래스나 함수를 동적실행하고 싶은 경우 1+2 이렇게 하니까 바로 되네.. print(eval(input()))
filter 되게 유용한데 쓰기 어려울거 같다...! 쓰는 방법은 함수이름 , 반복 가능한 자료형 요소 - 방법 1 def positive(l): result = [] for i in l: if i > 0: result.append(i) return result print(positive([1, -3, 2, 0, -5, 6])) - 방법 2 def positive(x): return x > 0 print(list(filter(positive, [1, -3, 2, 0, -5, 6]))) - 방법 3 람다식을 사용한다!! -> 여기 람다식으로!
#map함수 사용법 #와 이건 신기하다... 상상하지도 못한 방법이네네 def two_times(x): return x*2 print(list(map(two_times,[1,2,3,4])))
뭔가 하면서 느끼는 점은 자바랑 많이 다르고 계속해서 습득을 해야할거 같다......