20220923 TIL
2022. 9. 23. 22:00ㆍTIL(Today I Learnd)
- 목차
야호야호
타임어택
1. 전역변수와 지역변수 구분하기
아래 코드에서 a, b 변수가 지역변수인지 / 전역변수인지 구분하고, 코드 실행 없이 결과를 예상해서 적어주세요
답변 예제
a = 10
def test1():
b = 20
def test2():
print(a)
print(b)
test1()
test2()
# 실행이 잘 될까요?
# 실행이 되지 않는다면 어떤 에러가 발생할까요?
2. mutable과 immutable 구분하기
mutable에 해당하는 자료형과 immutable에 해당하는 자료형을 적어주세요
답변 예제
mutable
- ~
- ~
immutable
- ~
- ~
3. filter/map 혹은 리스트 축약식 활용해서 리스트 다뤄보기
아래 문제를 filter와 map 함수 혹은 리스트 축약식을 활용해 풀어주세요
- 1부터 10000까지의 숫자를 numbers 변수에 할당해주세요
- 1부터 10000까지 숫자 중, 짝수에 해당하는 숫자만 even_numbers 변수에 할당해주세요
- 1부터 10000까지의 숫자 중, 3의 배수이며 15의 배수가 아닌 숫자에 10을 곱하여 some_numbers 에 할당해주세요
입출력 예제
def get_even_numbers(numbers):
result = []
# some code
return result
def get_some_numbers(numbers):
result = []
# some code
return result
def main():
numbers = [] # 1 ~ 10000
even_numbers = get_even_numbers(numbers)
some_numbers = get_some_numbers(numbers)
print(even_numbers) # [2, 4, 6, ...]
print(some_numbers) # [30, 60, 90, 120, 180, ...]
main()
4. lambda를 활용해서 정렬해보기
입출력 예제
from pprint import pprint
users = [
{"name": "Ronald", "age": 30, "math_score": 93, "science_score": 65, "english_score": 93, "social_score": 92},
{"name": "Amelia", "age": 24, "math_score": 88, "science_score": 52, "english_score": 78, "social_score": 91},
{"name": "Nathaniel", "age": 28, "math_score": 48, "science_score": 40, "english_score": 49, "social_score": 91},
{"name": "Sally", "age": 29, "math_score": 100, "science_score": 69, "english_score": 67, "social_score": 82},
{"name": "Alexander", "age": 30, "math_score": 69, "science_score": 52, "english_score": 98, "social_score": 44},
{"name": "Madge", "age": 22, "math_score": 52, "science_score": 63, "english_score": 54, "social_score": 47},
{"name": "Trevor", "age": 23, "math_score": 89, "science_score": 88, "english_score": 69, "social_score": 93},
{"name": "Andre", "age": 23, "math_score": 50, "science_score": 56, "english_score": 99, "social_score": 54},
{"name": "Rodney", "age": 16, "math_score": 66, "science_score": 55, "english_score": 58, "social_score": 43},
{"name": "Raymond", "age": 26, "math_score": 49, "science_score": 55, "english_score": 95, "social_score": 82},
{"name": "Scott", "age": 15, "math_score": 85, "science_score": 92, "english_score": 56, "social_score": 85},
{"name": "Jeanette", "age": 28, "math_score": 48, "science_score": 65, "english_score": 77, "social_score": 94},
{"name": "Sallie", "age": 25, "math_score": 42, "science_score": 72, "english_score": 95, "social_score": 44},
{"name": "Richard", "age": 21, "math_score": 71, "science_score": 95, "english_score": 61, "social_score": 59},
{"name": "Callie", "age": 15, "math_score": 98, "science_score": 50, "english_score": 100, "social_score": 74},
]
# some code
pprint(users, width=300, sort_dicts=False)
"""
[{'name': 'Ronald', 'age': 30, 'math_score': 93, 'science_score': 65, 'english_score': 93, 'social_score': 92},
{'name': 'Trevor', 'age': 23, 'math_score': 89, 'science_score': 88, 'english_score': 69, 'social_score': 93},
{'name': 'Callie', 'age': 15, 'math_score': 98, 'science_score': 50, 'english_score': 100, 'social_score': 74},
{'name': 'Sally', 'age': 29, 'math_score': 100, 'science_score': 69, 'english_score': 67, 'social_score': 82},
{'name': 'Scott', 'age': 15, 'math_score': 85, 'science_score': 92, 'english_score': 56, 'social_score': 85},
{'name': 'Amelia', 'age': 24, 'math_score': 88, 'science_score': 52, 'english_score': 78, 'social_score': 91},
{'name': 'Richard', 'age': 21, 'math_score': 71, 'science_score': 95, 'english_score': 61, 'social_score': 59},
{'name': 'Jeanette', 'age': 28, 'math_score': 48, 'science_score': 65, 'english_score': 77, 'social_score': 94},
{'name': 'Raymond', 'age': 26, 'math_score': 49, 'science_score': 55, 'english_score': 95, 'social_score': 82},
{'name': 'Alexander', 'age': 30, 'math_score': 69, 'science_score': 52, 'english_score': 98, 'social_score': 44},
{'name': 'Andre', 'age': 23, 'math_score': 50, 'science_score': 56, 'english_score': 99, 'social_score': 54},
{'name': 'Sallie', 'age': 25, 'math_score': 42, 'science_score': 72, 'english_score': 95, 'social_score': 44},
{'name': 'Nathaniel', 'age': 28, 'math_score': 48, 'science_score': 40, 'english_score': 49, 'social_score': 91},
{'name': 'Rodney', 'age': 16, 'math_score': 66, 'science_score': 55, 'english_score': 58, 'social_score': 43},
{'name': 'Madge', 'age': 22, 'math_score': 52, 'science_score': 63, 'english_score': 54, 'social_score': 47}]
"""
내가낸 답
그냥 모르는 것같다 ㅎㅎ
def get_even_numbers(numbers):
result = [0]
for i in range(1, numbers):
result.append(i)
# some code
return result
def get_some_numbers(numbers):
result = []
for i in range(numbers, 10001, 2):
result.append(i)
return result
get_some_numbers(0)
def main():
numbers = []
even_numbers = get_even_numbers(10001)
some_numbers = get_some_numbers(0)
print(even_numbers) # [2, 4, 6, ...]
print(some_numbers) # [30, 60, 90, 120, 180, ...]
main()
Django
git에 장고 프로젝트를 업데이트 할 때는 venv폴더를 제외한다.
.gitignore 파일을 만들고
파일 안에
venv/
를 입력해주면 venv폴더를 제외시킨다.
장고는 프로젝트에 따라 사용되는 모듈도 다르고 관리를 따로 해주는데
requirements.txt 파일에서 관리가 된다.
현재 설치된 모듈 리스트를 requirements.txt 파일로 만들어주는 명령어는
pip3 freeze > requirements.txt
방금 설치한 art 5.7버전의 모듈이 등재 돼있다.
만약 다른 프로젝트를 함께 진행하려고 한다면 그 프로젝트에서 사용되는 모듈을 설치해줘야된다.
그럴 때는 가상환경을 실행해주고 interpreter도 잘 설정해준다음
pip3 install -r requirements.txt
해주면 requirements.txt에 등재된 모듈이 한번에 설치된다.
.gitignore파일안에 들어갈 내용들을 만들어주는 사이트가 있다.
https://www.toptal.com/developers/gitignore
접속해서
django
macos
visualstudiocode
해줘서 생성해주면
이런게 나오는데 다 복사해서 .gitignore파일에 붙여넣고
venv를 이렇게 넣어주자
설정을 해주고 git과 연동해주자
레포지토리를 생성해주는데 reademe는 여기서 만들어주지 않는다.
주소를 복사하고 터미널에
git init #git 실행
git remote add oring https://github.com/OceanGim/django_prectice.git
#자신의 레포주소
git add .
git commit -m 'init'
git push origin master # 여기서 권한설정 뭐 뜰건데 항상허용 해줘버리자...
해주면
아름답게 커밋된 것을 확인 할 수 있다.
'TIL(Today I Learnd)' 카테고리의 다른 글
20220927 TIL (0) | 2022.09.27 |
---|---|
20220926 TIL (0) | 2022.09.26 |
20220922 TIL (1) | 2022.09.22 |
20220921 TIL (2) | 2022.09.21 |
20220920 TIL (1) | 2022.09.20 |