Python의 데이터 유형 요약
1. 정수형
파이썬2에는 정수형과 장형 정수형이 있는데, 파이썬3에서는 장형 정수형이 취소되고 정수형으로 통일된다.
파이썬의 정수는 2진수, 8진수, 10진수, 16진수 형태로 표현될 수 있습니다
다음 방법을 사용하여 10진수를 다른 형태로 변환할 수 있습니다
>>> print(bin(10)) ---------> 把十进制转化为二进制 0b1010>>> print(oct(10)) ---------> 把十进制转化为八进制 0o12>>> print(hex(10)) ---------> 把十进制转化为十六进制0xa>>> print(hex(100))0x64
二、浮点型
浮点型数就是小数,因为用科学计数法表示小数时,小数点的位置是可以变化的,所以称为浮点数。在计算机中,整数永远是准确的,而浮点数在四舍五入的过程中却有可能产生误差。小的浮点数可以直接写,但是对于位数很多的浮点数,就必须用科学计数法来表示。把10用e表示,如1.03乘10的9次方,就要写成1.03e9
三、字符串类型
定义在引号里面的整体称为字符串,是由一个个字符构成的
引号可以是单引号,双引号,三引号,多引号...(在Python中,单引号和双引号没有区别)
字符串的常用操作:
Python为字符串内置了很多种方法,方便处理需求
1..strip() 作用是移除空白,可以在()中指定移除的字符,默认为空格
x='*****abc*****' print(x.strip('*')) 运行结果为:abc
2..capitalize() 作用是首字母大写
x='hello world' print(x.capitalize()) 运行结果为:Hello world
3.upper() 作用是所有字母都大写,相反的lower()的作用是所有字母小写
x='hello world' print(x.upper()) 运行结果为:HELLO WORLD
4..center(self,width,fillchar) 作用是把字符放中间,左右用指定的字符填充至指定的字符长度
x='hello world' print(x.center(30,'*')) 运行结果为:*********hello world*********
5..count 作用是统计字符串中某一字符出现的次数,可以指定范围
x='hello world' print(x.count('l',0,10)) 命令的作用是统计“hello world”中第1到11个字符中,‘l’出现的次数 运行结果为:3 6..startswith() 以..开头 x='hello world' print(x.startswith('a')) 判断x是否以‘a’开头,如果是,结果为True,如果不是,结果为False
.endswith() 以..结尾 7..find() 寻找,如果结果不为负数,则成功。会返回目标字符在字符串中的位置 find()和index()的区别是如果找不到对象,find()会返回-1,index()会报错 8..format 格式化字符串(先举个小例子,后续博客中会详细介绍) x='myname:{},age:{},sex:{}' print(x.format('zhang',18,'male')) 运行结果为:myname:zhang,age:18,sex:male 9..index() 查看某个字符的索引,如果超出范围会报错 x='hello world' print(x[1]) ------>e print(x[4]) ------>o print(x[-1]) ------>d 倒着数 print(x.index('w')) --------->6 查看某一字符在在字符串中的索引 字符串的切片操作:print(x[1:3]) -------->el 取x中第1,2个字符 切片也可以加步长:print(x[1:5:2]) ------->el 取x中第1,2,3,4个字符,但是每两个字符取一次,也就是取第1,3个字符 10..isdigit() 查看字符串是否为整数,是则输出True,否则输出False x='hello world' print(x.isdigit()) False 11..replace 替换 x='hello world' print(x.replace('e','E')) #不止可以替换字符,也可以替换字符串 运行结果为:hEllo world 12..split() 默认以空格为分隔符分割成几部分,当然也可以指定字符作为分隔符 x='hello:world:today:is:a:goodday' print(x.split(':')) 运行结果为:['hello', 'world', 'today', 'is', 'a', 'goodday'] 13..issupper() 判断是否全部为大写 .islower() 判断是否全部为小写 .isspace() 判断是否为空格 .istitle() 判断是否首字母大写 14..ljust() 左对齐 .rjust() 右对齐 15..swapcase() 大小写反转 .title() 首字母大写
四、列表 list
列表中可以存放各种数据类型,以逗号分割开,每个位置存放一个元素
1.列表的特性:可以存放多个值,每个值对应一个索引值
列表中的值可变
按从左到右的顺序定义列表元素,下标从0开始,是有序的
2.列表的创建
l=['abc','123',12] ------>['abc', '123', 12]
l=list('abc123') ------>['a', 'b', 'c', '1', '2', '3']
l=list(['abc','123',12]) ------->['abc', '123', 12]
3.列表的常用操作
1)索引
l=['abc','123',12,[3,'e',5]]
print(l[0]) -------->abc
print(l[2]) ---------->12
print(l[3][2]) ----------->5
2) 切片
l=['abc','123',12,'[3,'e',5]]
print(l[1:3]) --------->['123', 12]
注意:切片是读操作,原列表并不会发生改变
3)追加 .append()
l=['abc','123',12,'[3,'e',5]]
l.append('hello')
print(l) ------------>['abc', '123', 12, [3, 'e', 5], 'hello']
默认是把字符加在原列表最后边
4)插入 .insert()
l=['abc','123',12,'[3,'e',5]]
l.insert(0,'hello')
print(l) ------------>['hello', 'abc', '123', 12, [3, 'e', 5]]
注意:insert()中要指定索引位置,必须指定,否则会报错
5)删除 .pop()
l=['abc','123',12]
l.pop(1)
print(l) ------------>['abc', 12]
注意:()中可以指定要删除的元素的索引值,默认是最后一个
l.pop()是有返回值的,返回删掉的元素
补充:队列和堆栈
队列是先进先出,可以用append()和pop(0) 或 insert()和pop()模拟
堆栈是先进后出,可以用append()和pop() 或insert()和pop(0)模拟
6)长度 len()
l=[1,2,3]
print(len(l)) ---------------------->3
7)循环
l=[1,2,3]
for i in l:
print(i) --------------------->1 2 3
8)包含 in
l=['a','b','c']
print('b' in l) ------------------------->True
4.列表的其他操作
1)查看某一元素的索引 .index()
l=['a','b','c']
print(l.index('a')) ------------------>0
2)列表中某个元素的数量 .count()
l=['a','b','c','a']
print(l.count('a)) -------------->2
3)追加 .extend() 和append有区别
l=[1,2,3] l.append(['a','b','c']) print(l) -------------->[1, 2, 3, ['a', 'b', 'c']]
l=[1,2,3] l.extend(['a','b','c']) print(l) --------------->[1, 2, 3, 'a', 'b', 'c']
4)按元素删除 .remove
注意当目标元素不存在时会报错,且有多个目标元素时只会删一个
l=[1,2,3] l.remove('a') print(l) ------------->ValueError: list.remove(x): x not in list
5)排序 .sort() 无返回值
l=[3,2,4] l.sort() print(l) ----------------->[2, 3, 4]
l=['a','c','d','cd'] l.sort() print(l) ----------------->['a', 'c', 'cd', 'd'] l.sort(reverse=True) 表示倒序排列
6)反转顺序 .reverse()
五、元组 tuple
1)元组的定义
t=('a','b',1,(3,4))
形式与列表相似,只是[]改成了()
2)元组的特性:
元组元素可以是任意数据类型;
元组是不可变数据类型;
元组的元素可以是列表,列表的元素可以变,虽然列表的元素改变了,但是列表作为元组的一个元素并没有发生变化,所以不影响元组是不可变数据类型这一特点
因为元组是不可变数据类型,所以不存在增删改的功能,元组的方法只有count() 和 index()
3)元组的常用操作有:索引、切片、循环、长度和包含
4)元组和列表的相互转化:
t=('a','b',1,2) l=['f','d',4] tl=list(tuple(t)) print(tl,type(tl)) ---------->['a', 'b', 1, 2] <class 'list'> lt=tuple(list(l)) print(lt,type(lt)) ---------->('f', 'd', 4) <class 'tuple'>
六、字典 dict
1)字典的定义:
d={'x':1,'y':1234}
2)字典的元素是键值对(key - values)
字典是一种可变数据类型,其中values可变,但是Key不可变
需注意:定义字典时,key必须是不可变类型,或者说是可hash类型
3)字典的取值
字典是无序的,没有索引的概念,通过key来取值 print(d['x']) 就能取到1这个值
如果key找不到的话会报错,可以用.get(key) 如果找不到key,会打印None,但是不会报错
4)修改值
d['x']='s' --------把原字典改成了{‘x’:'s','y':1234}
5)循环
d={'name':'zhang','age':18} print(d.keys()) #dict_keys(['name', 'age']) print(d.values()) #dict_values(['zhang', 18]) for i in d: print(i) #name age 直接遍历字典,打印的是key for k in d: print(k,d[k]) #name zhang age 18
因为字典是无序的,所以遍历字典的方法只有 for i in d:这一种
字典的常用方法:
1)清除
d={'x':1} d.clear() #清除 print(d) #{}
2)避免找不到元素报错的情况
d={'x':1} print(d.get('s')) #None print(d('s')) #报错TypeError: 'dict' object is not callable
3)把键值对转换成元组形式
d={'x':1} d.items() for k,v in d.items(): print(k,v) #x 1
4)把values转换成列表形式
d={'x':1,'y':2322} print(list(d.values())) #把values值转换成列表形式----------->[1, 2322]
5)删除 .pop()
d={'x':1,'y':2322} d.pop('x') print(d) #{'y': 2322} print(d.pop('x')) #1 打印删除的那个值
6)删除 .popitem() 随机删除
d={'x':1,'y':2322} d.popitem() #括号里不能跟参数,随机删除 print(d) #{'x': 1}
7)添加键值对 .setdefault() 括号里是键值对
d={'x':1} d.setdefault('s',2) print(d) #{'x': 1, 's': 2} 添加键值对,key和值之间用逗号隔开
8)产生字典的方法
d3=dict(x=5,y=2,z=3) #{'x': 5, 'y': 2, 'z': 3} 自动生成字典 d3=dict({'x':1,'y':2}) #{'x': 1, 'y': 2} d3=dict([('x',1),('y',2),('z',3)]) #{'x': 1, 'y': 2, 'z': 3} d3={}.fromkeys(['name','age'],None) #{'name': None, 'age': None} None的位置只能有一个值,这种方法只能创建这种类型的 print(d3)
9)更新字典 .update()
d={'name':'alex'} d1={'name':'alexsb','age':30} d.update(d1) #用d1更新字典d print(d) #{'name': 'alexsb', 'age': 30}
10)长度
d={'name':'zhangcan','age':18,'salary':'100000'} print(len(d)) #3 print(len(d.values())) #3 print(len(d.items())) #3 print(len(d.keys())) #3
11)成员运算
d={'name':'zhangcan','age':18,'salary':'100000'} print('x'in d) #False print('name'in d) #True print(18 in d) #False print(18 in d.values()) #True print('age' in d.keys()) #True print(18 in d.items()) #False print(('age',18) in d.items()) #True
七、布尔类型
所有的数据类型都自带布尔值(bool),if 判断时,只有0,None,NULL为False,其他都为True
八、集合(set)
1.集合的定义
1)集合内的元素必须是唯一的,可以用这个特性来实现‘去重’的功能
s={'egon',123,123,1,'abf'} print(s) # {1, 123, 'egon', 'abf'}
2)集合内的元素必须是可hash的,即不可变的
3)集合是无序的(无索引)
2.集合的关系运算(符号)
s1={'alex','egon','wupeiqi'} s2={'alex','egon','zhangcan'} print(s1 & s2) #取交集 print(s1 | s2) #取并集 print(s1-s2) #差集{'wupeiqi'} print(s1^s2) #对称差集{'zhangcan', 'wupeiqi'}
3.集合的常用命令
print(s1.difference(s2)) #差集 print(s1.intersection(s2)) # 交集 print(s1.union(s2)) #并集 print(s1.symmetric_difference(s2)) #{'zhangcan', 'wupeiqi'}对称差集 print(s1.symmetric_difference_update(s2)) #None对称差集并更新回s1 print(s1) #{'zhangcan', 'wupeiqi'}
s1.update(s2) #并集 print(s1) #{'zhangcan', 'wupeiqi', 'egon', 'alex'}
s1.add('yuanhao') #添加元素 print(s1)
s1.discard('alex') #删除(找不到元素不会报错) print(s1) s1.remove('alex') #删除,但找不到元素会报错
s1.pop() #括号里不能有东西,随机删除 print(s1)
成员运算:
s3={'a','b','c',1,2,3} s4={1,2,3} print(s4.issubset(s3)) #s4是否是s3的子集 print(s3.issuperset(s4)) #s3是否是s4的超集 print(s3.isdisjoint(s4)) #s3和s4是否有交集,有交集---False,没有交集---True
위 내용은 Python의 데이터 유형 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP와 Python은 고유 한 장점과 단점이 있으며 선택은 프로젝트 요구와 개인 선호도에 달려 있습니다. 1.PHP는 대규모 웹 애플리케이션의 빠른 개발 및 유지 보수에 적합합니다. 2. Python은 데이터 과학 및 기계 학습 분야를 지배합니다.

CentOS 시스템에서 Pytorch 모델을 효율적으로 교육하려면 단계가 필요 하며이 기사는 자세한 가이드를 제공합니다. 1. 환경 준비 : 파이썬 및 종속성 설치 : CentOS 시스템은 일반적으로 파이썬을 사전 설치하지만 버전은 더 오래 될 수 있습니다. YUM 또는 DNF를 사용하여 Python 3 및 Upgrade Pip : Sudoyumupdatepython3 (또는 SudodnfupdatePython3), PIP3INSTALL-UPGRADEPIP를 설치하는 것이 좋습니다. CUDA 및 CUDNN (GPU 가속도) : NVIDIAGPU를 사용하는 경우 Cudatool을 설치해야합니다.

Python과 JavaScript는 커뮤니티, 라이브러리 및 리소스 측면에서 고유 한 장점과 단점이 있습니다. 1) Python 커뮤니티는 친절하고 초보자에게 적합하지만 프론트 엔드 개발 리소스는 JavaScript만큼 풍부하지 않습니다. 2) Python은 데이터 과학 및 기계 학습 라이브러리에서 강력하며 JavaScript는 프론트 엔드 개발 라이브러리 및 프레임 워크에서 더 좋습니다. 3) 둘 다 풍부한 학습 리소스를 가지고 있지만 Python은 공식 문서로 시작하는 데 적합하지만 JavaScript는 MDNWebDocs에서 더 좋습니다. 선택은 프로젝트 요구와 개인적인 이익을 기반으로해야합니다.

CentOS 시스템에서 Pytorch GPU 가속도를 활성화하려면 Cuda, Cudnn 및 GPU 버전의 Pytorch를 설치해야합니다. 다음 단계는 프로세스를 안내합니다. CUDA 및 CUDNN 설치 CUDA 버전 호환성 결정 : NVIDIA-SMI 명령을 사용하여 NVIDIA 그래픽 카드에서 지원하는 CUDA 버전을보십시오. 예를 들어, MX450 그래픽 카드는 CUDA11.1 이상을 지원할 수 있습니다. Cudatoolkit 다운로드 및 설치 : NVIDIACUDATOOLKIT의 공식 웹 사이트를 방문하여 그래픽 카드에서 지원하는 가장 높은 CUDA 버전에 따라 해당 버전을 다운로드하여 설치하십시오. CUDNN 라이브러리 설치 :

Docker는 Linux 커널 기능을 사용하여 효율적이고 고립 된 응용 프로그램 실행 환경을 제공합니다. 작동 원리는 다음과 같습니다. 1. 거울은 읽기 전용 템플릿으로 사용되며, 여기에는 응용 프로그램을 실행하는 데 필요한 모든 것을 포함합니다. 2. Union 파일 시스템 (Unionfs)은 여러 파일 시스템을 스택하고 차이점 만 저장하고 공간을 절약하고 속도를 높입니다. 3. 데몬은 거울과 컨테이너를 관리하고 클라이언트는 상호 작용을 위해 사용합니다. 4. 네임 스페이스 및 CGroup은 컨테이너 격리 및 자원 제한을 구현합니다. 5. 다중 네트워크 모드는 컨테이너 상호 연결을 지원합니다. 이러한 핵심 개념을 이해 함으로써만 Docker를 더 잘 활용할 수 있습니다.

Centos에서 Pytorch 버전을 선택할 때 다음과 같은 주요 요소를 고려해야합니다. 1. Cuda 버전 호환성 GPU 지원 : NVIDIA GPU가 있고 GPU 가속도를 사용하려면 해당 CUDA 버전을 지원하는 Pytorch를 선택해야합니다. NVIDIA-SMI 명령을 실행하여 지원되는 CUDA 버전을 볼 수 있습니다. CPU 버전 : GPU가 없거나 GPU를 사용하지 않으려면 Pytorch의 CPU 버전을 선택할 수 있습니다. 2. 파이썬 버전 Pytorch

Minio Object Storage : Centos System Minio 하의 고성능 배포는 Go Language를 기반으로 개발 한 고성능 분산 객체 저장 시스템입니다. Amazons3과 호환됩니다. Java, Python, JavaScript 및 Go를 포함한 다양한 클라이언트 언어를 지원합니다. 이 기사는 CentOS 시스템에 대한 Minio의 설치 및 호환성을 간단히 소개합니다. CentOS 버전 호환성 Minio는 다음을 포함하되 이에 국한되지 않는 여러 CentOS 버전에서 확인되었습니다. CentOS7.9 : 클러스터 구성, 환경 준비, 구성 파일 설정, 디스크 파티셔닝 및 미니를 다루는 완전한 설치 안내서를 제공합니다.

CentOS 시스템에 대한 Pytorch 분산 교육에는 다음 단계가 필요합니다. Pytorch 설치 : 전제는 Python과 PIP가 CentOS 시스템에 설치된다는 것입니다. CUDA 버전에 따라 Pytorch 공식 웹 사이트에서 적절한 설치 명령을 받으십시오. CPU 전용 교육의 경우 다음 명령을 사용할 수 있습니다. PipinStalltorchtorchvisiontorchaudio GPU 지원이 필요한 경우 CUDA 및 CUDNN의 해당 버전이 설치되어 있는지 확인하고 해당 PyTorch 버전을 설치하려면 설치하십시오. 분산 환경 구성 : 분산 교육에는 일반적으로 여러 기계 또는 단일 기계 다중 GPU가 필요합니다. 장소
