목차
-
- 1. 순차 목록 / 튜플 생성
- 2. Python 출력 형식
- 3. Lambda 함수 사용
- 4. 맵 기능 사용
- 5. Python 특별 참고 사항
- 6. 정규식을 사용하여 문자열에서 중국어가 아닌 문자 제거
- 7. 문이 실행 중일 때만 실행되고 호출 될 때 실행되지 않도록합니다.
- 8. Python 읽기 및 쓰기 파일 방법
- 9. TXT 파일 인코딩
- 10. 스크래피 모듈을 적용 할 때 항목을 참조하는 두 가지 방법
- 11. 여러 파이썬 버전의 컴퓨터에서 스크래피 프레임 워크 구축
- 12. pytorch 모델의 주소 다운로드 및 저장 위치
- 13. CNN과 RNN의 차이점
- 14. 발생한 오류 및 해결 방법
1. 순차 목록 / 튜플 생성
s = [x for x in range(1,10)]
2. Python 출력 형식
print("Python{} {}/{}/{}".format('学习',2019,9,6))
print("Python%s %d/%2d/%2d"%('学习',2019,9,6))# %s输出字符串,%2d输出2格整数
#此外还有%f,%4.2f等控制小数点后位数
3. Lambda 함수 사용
익명 함수를 정의하는 데 사용됩니다. 함수 함수는 매우 간단하고, 따로 함수를 정의 할 필요가 없습니다. 이때 람다가 편리합니다.
f = lambda x: x*x + 1
f(3)
f(5)
4. 맵 기능 사용
일대일 매핑에 사용되는지도 기능은 매우 간단합니다. 입력 매개 변수는 매핑 관계 및 시퀀스 (일반적으로 목록이지만 튜플이기도 함)입니다. 정의 된 함수를 통한 시퀀스 요소의 일대일 매핑은 목록을 반환합니다.
f = lambda x: x*x + 1
s = [x for x in range(1,10)]
ss = map(f,s)
for i in ss:
print("函数值:\t%d"%(i))
5. Python 특별 참고 사항
#!/usr/bin/python3 env
이 문장은 파이썬 컴파일러의 위치를 나타냅니다. Windows 환경에서는 필수는 아니지만 Linux 환경에 있어야하며 Linux 환경과 호환되기 위해서는이 문장을 추가하십시오.
#coding=utf-8
이 문장은 문자 인코딩을 지정하고, python3은 기본적으로 utf-8이지만 python2는 ASCII 인코딩을 사용합니다. python2와 호환되도록하려면이 문장을 추가하세요.
6. 정규식을 사용하여 문자열에서 중국어가 아닌 문자 제거
import re #引入正则
def remove(text):
remove_chars = '[A-Z0-9’a-z!"#$%&\'()*+,-./:;<=>?@,。?★、…【】《》?“”‘’![\\]^_`{|}~]+'
return re.sub(remove_chars, '', text)
7. 문이 실행 중일 때만 실행되고 호출 될 때 실행되지 않도록합니다.
if __name__ == "__main__":
print("Print only in running")
#if下面的语句将在被调用时不会执行
8. Python 읽기 및 쓰기 파일 방법
기본적으로 C 언어 키워드와 동일
아르 자형 | 읽기 전용 모드 | 파일이 있어야합니다 (기본 모드). |
---|---|---|
w | 쓰기 전용 모드 | 파일이 존재하지 않으면 생성되고 존재한다면 비워진 후 기록됩니다. |
ㅏ | 추가 모드 | 파일이 존재하지 않는 경우 작성하고 존재하는 경우 컨텐츠를 추가하십시오. |
r + | 읽기 및 쓰기 모드 | 파일이 존재해야하며 처음부터 시작하여 작성하는만큼 덮어 쓰고 동시에 읽을 수 있어야합니다. |
w + | 읽기 및 쓰기 모드 | 파일이 존재하지 않으면 생성되고 존재한다면 쓰기와 읽기를 동시에합니다. |
a + | 읽기 및 쓰기 모드 | 파일이 존재하지 않는 경우 생성하고, 존재하는 경우 내용 뒤에 작성하여 읽습니다. |
읽기 및 쓰기 예 :
fr = open('test1.txt','r+')#打开文件
for line in fr: #遍历文件
print('每行内容为:',line) #打印文件中每一行内容
fr.close()#关闭文件
fw = open('test2.txt','w+')#打开或创建文件
fw.write('Python写入操作')
fw.close()#关闭文件
참고 : 읽기 작업 중에 파일 포인터가 파일 끝에 있는지 여부에주의하십시오. 끝에있는 경우 파일 내용을 읽으려면 포인터를 찾기 (0)로 시작 으로 재설정 해야합니다 (예 : fr.seek (0)).
9. TXT 파일 인코딩
txt 파일의 기본값은 gbk 인코딩이지만 문자 인코딩이 utf-8 인 경우 오류가보고됩니다. 이때 문자 인코딩을 utf-8로 지정해야합니다.
with open('test.txt','w',encoding = 'utf-8') as fp:
fp.write(result)
10. 스크래피 모듈을 적용 할 때 항목을 참조하는 두 가지 방법
1. 다음은 Pycharm에서 오타를 프롬프트하지만 여전히 실행할 수 있습니다.
from FindMovies.items import FindmoviesItem
2. 다음 방법을 사용하는 대신 문제가 없습니다.
import sys
sys.path.append('E:\\PyCharm2017\\program\\FindMovies\\FindMovies')# 当前items所在的路径
from items import FindmoviesItem
11. 여러 파이썬 버전의 컴퓨터에서 스크래피 프레임 워크 구축
- 일반적으로 스크래피 프레임 워크가 설정되며 명령 줄에서 프로그램이 저장된 경로를 찾고 다음 명령을 입력하면됩니다.
scrapy startProject scrapyDemo #建立名为scrapyDemo爬虫框架
tree scrapyDemo #查看框架产生的项目分支
다음 프로젝트 브랜치가 반환되면 성공적으로 생성 된 것
입니다 2. python 버전이 여러 개인 경우
런처에 Fatal error : Unable to create process using ... 이 나타날 수 있습니다 . 이때 명령어를 입력하여 Python 버전을 지정해야합니다. 만들다:
python -m scrapy startproject scrapyDemo
이제 정상적으로 만들 수 있습니다.
12. pytorch 모델의 주소 다운로드 및 저장 위치
- 각 pytorch 모델의 다운로드 링크는 다음과 같습니다.
link : blog ; 다운로드 주소를 직접 복사하여 브라우저에 붙여 넣어 다운로드합니다. - 다운로드 한 모델의 저장 위치는 다음과 같은 방법으로 확인할 수 있습니다.
IDLE 입력
import torchvisvion.models as models
resnet = models.resnet18(pretrained=True)
파일 및 저장 위치를 다운로드하라는 팝업이 표시되며 다운로드 한 모델을 변경된 경로에 복사하기 만하면됩니다.
13. CNN과 RNN의 차이점
CNN은 Convolutional Neural Network의 약자이고 RNN은 Recurrent Neural Network의 약자입니다. CNN의 한계는 입력 및 출력 시퀀스가 고정되어있는 반면 RNN은 가변적이며 다음과 같이 그래픽으로 표현됩니다.
CNN은 일대일이고 RNN은 일대 다, 다 대일, 다 대다입니다. RNN은 기계 번역, 텍스트 처리 등과 같은 다양한 입력 및 출력 시퀀스가있는 시나리오에 적합합니다. 일반적으로 RNN은 가변 길이 데이터를 처리하도록 설계되었습니다.
14. 발생한 오류 및 해결 방법
1. TypeError : 문자열 형식화 중 일부 인수가 변환되지 않음
매개 변수가 대응하지 않는 문제로, %를 사용하여 매개 변수를 전달할 때 나타납니다.
해결 방법 :
%를 .format ()으로 바꿉니다.