2017.7.24 정리
a = [11,22,33]
b = a
id(a)
id(b)
심층 복사는 한 대상의 모든 차원에 대한 복사이다.
import copy
a =[11,22,33]
b = copy.deepcopy(a)
만약 복사 대상이 변할 수 없다면, 깊이 복사 = 얕은 복사
2. 속성property 사용 방법 @property는 방법을 읽기 전용으로 전환하여 하나의 속성의 설정과 읽기를 실현할 수 있습니다
class Test:
def __init__(self):
self.__name = None
@property
def name(self):
return self.__name
@name.setter
def name_set(self,value):
self.__name = value
3. 생성기 방법 1:
L = [x for x in range(10)]
G = (x for x in range(10))
next(G)
방법2:
def fib(times):
n = 0
a,b = 0,1
while n
방법3:send를 이용하여yield에 실행할 때gen 함수 작용을 잠시 저장하고 i의 값을 되돌려준다.temp는 다음 c.send("python")을 받고,send가 보낸 값,c.next() 등가 c.send(None)
def gen():
i = 0
while i<5:
temp = yield i
print(temp)
i+=1
def gen():
i = 0
while i<5:
temp = yield i
print(temp)
i+=1
f = gen()
print(f.send(None))
4. 동적 언어 개념: 동적 프로그래밍 언어는 고급 프로그래밍 언어의 한 종류로 컴퓨터 과학 분야에서 광범위하게 응용되었다.이것은 실행할 때 구조를 바꿀 수 있는 언어이다. 예를 들어 새로운 함수, 대상, 심지어 코드가 도입될 수 있고, 기존의 함수는 삭제되거나 다른 구조상의 변화가 있을 수 있다.(1) 실행 중 객체에 속성 추가
class Test:
def __init__(self,name):
self.name = name
test = Test('zhangsan')
test.age = 18
(2) 실행 중 클래스에 속성 추가
class Test:
def __init__(self,name):
self.name = name
Test.age = 18
(3) 실행 중 클래스에 추가하는 방법
class Test:
def __init__(self,name):
self.name = name
def run():
print('running......')
#
@classmethod
def run(cls):
print('running.....')
#
@staticmethod
def run():
print('running.......')
test = Test('zhangsan')
#
import types
test.run = types.MethodType(run,test)
#
Test.run = run
#
Test.run = run
5, slots 제한 추가 가능한 속성
class Student:
__slots__ = ('name','age')
6. 클래스 type 생성 클래스 type은 다음과 같이 작업할 수 있습니다. type(클래스 이름, 부모 클래스 이름으로 구성된 원조(상속된 경우 비워둘 수 있음), 속성을 포함하는 사전(이름과 값)
Test2 = type("Test2",(),{})
Foo = type('Foo', (), {'bar':True})
>>> class Foo(object):
… bar = True
7、스팸 수거 (1) 작은 정수 탱크 파이톤의 작은 정수에 대한 정의는 [-5, 257) 이 정수 대상은 미리 만들어진 것으로 스팸 수거되지 않습니다. 파이톤의 프로그램에서 이 범위에 있는 모든 정수는 같은 대상을 사용합니다. (2) 큰 정수 탱크의 모든 큰 정수는 새로운 대상을 만듭니다. (3)인터넷 메커니즘python에는 인터넷 메커니즘이 있는데 그가'HelloWorld'가 차지하는 메모리 공간만 차지하게 한다.인용 계수로 언제 풀릴지 유지합니다.
총괄: 소정수[-5257) 공용 대상, 상주 메모리 단일 문자 공용 대상, 상주 메모리 단일 단어, 수정할 수 없음, 기본적으로 인터넷 메커니즘을 켜고 공용 대상, 인용 계수가 0이면 폐기
8. 내장 함수 맵: 함수에 따라 지정한 서열에 비추기
def f1( x, y ):
return (x,y)
l1 = [ 0, 1, 2, 3, 4, 5, 6 ]
l2 = [ 'Sun', 'M', 'T', 'W', 'T', 'F', 'S' ]
l3 = map( f1, l1, l2 )
print(list(l3))
filter:함수는 지정된 시퀀스에 대해 필터링 작업을 수행합니다.
filter(lambda x: x%2, [1, 2, 3, 4])
[1, 3]
reduce:reduce 함수는 매개 변수 서열에 있는 요소를 누적합니다
reduce(lambda x, y: x+y, [1,2,3,4], 5)
15
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.