一、基本数据类型

1.字符串

类:str

方法:选中str,按住command(ctrl)+左键跳转至对应的方法

字符串常用方法归纳如下:

  • 1)capitalize

功能:实现字符串首字母大写,自身不变,会生成一个新的值

capitalize

例子:

1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 name = 'hexin'
4 v = name.capitalize() #调用str类,执行其中capitalize的方法
5 print(v)

输出:

hexin
Hexin
  • 2)casefold

功能:将所有大写变成小写,另外支持多门语言变化

casefold

例子:

1 name = 'HexIn'
2 v = name.casefold()
3 print(name)
4 print(v)

输出:

HexIn
hexin
  • 3)lower,upper

功能:

lower:将所有的大写变小写,局限英文

upper:将所有小写变大写

lower

例子:

1 name = 'HeXin'
2 v = name.lower()
3 print(name)
4 print(v)

结果:

HeXin
hexin
  • 4)center

功能:文本居中,空白处填充字符

参数1:表示总长度;参数2:空白处填充的字符(长度为1)

center

例子:

1 name = 'HeXin'
2 v = name.center(20,'*')
3 print(name)
4 print(v)

输出:

HeXin
*******HeXin********
  • 5)count

功能:表示要查找的子序列在字符串中出现的次数

参数1:要查找的值(子序列);参数2:起始位置(索引);参数3:结束位置(索引)

count

例子:

1 name = 'HeXinddaklfjsl;dfjcnljdajsflajdf'
2 v = name.count('a')
3 i = name.count('a',0,15)
4 print(name)
5 print(v)
6 print(i)

输出:

3
1
  • 6)endswith

功能:判断是否以xx结尾

参数1:判断值;参数2,3:起始和结束的位置(个数)

endswith

例子:

1 name = 'HeXinddaklfjsl;dfjcnljdajsflajdf'
2 v = name.endswith('df')
3 i = name.endswith('n',0,5)
4 print(name)
5 print(v)
6 print(i)

输出:

HeXinddaklfjsl;dfjcnljdajsflajdf
True
True
  • 7)expandtabs

功能:找到制表符\t,进行替换(包含前面的值)

expandtabs

例子:

1 name = "al\te\tx\nalex\tuu\tkkk"
2 v = name.expandtabs(5)  #包含前面的值,5个长度
3 print(v)

输出:

al   e    x
alex uu   kkk
  • 8)find

功能:找到指定子序列的索引位置,不存在返回-1

find

例子:

1 name = 'hexin'
2 v = name.find('0')
3 i = name.find('x')
4 print(v)
5 print(i)

输出:

-1
2
  • 9)format,%s,format_map

功能:字符串格式化

format
format_map

例子:

 1 tpl1 = "我是:%s;年龄:%s;性别:%s" %( 'hexin',18,'man')
 2 print(tpl1)
 3
 4 tpl2 = "我是:{0};年龄:{1};性别:{2}"
 5 v2 = tpl2.format("李杰",19,'都行')
 6 print(v2)
 7
 8 tpl3 = "我是:{name};年龄:{age};性别:{gender}"
 9 v3 = tpl3.format(name='李杰',age=19,gender='随意')
10 print(v3)
11
12 tpl4 = "我是:{name};年龄:{age};性别:{gender}"
13 v4 = tpl4.format_map({'name':"李杰",'age':19,'gender':'中'})
14 print(v4)

输出:

我是:hexin;年龄:18;性别:man
我是:李杰;年龄:19;性别:都行
我是:李杰;年龄:19;性别:随意
我是:李杰;年龄:19;性别:中
  • 10)isalnum

功能:是否是数字或汉字

isalnum

例子:

1 name = 'hexin0好'
2 v = name.isalnum()
3 print(v)

输出:

True
  • 11)isdecimal,isdigit,isnumeric

功能:是否是数字

isalnum
isdecimal
isdigit

例子:

1 num = '二'
2 v1 = num.isdecimal() # '123'
3 v2 = num.isdigit()   # '123','②'
4 v3 = num.isnumeric() # '123','二','②'
5 print(v1,v2,v3)

输出:

False False True
  • 12)isidentifer

功能:是否是有效的标识符

isidentifier

例子:

1 n = '1name'
2 u = 'name'
3 v = n.isidentifier()
4 i = u.isidentifier()
5 print(v)
6 print(i)

输出:

False
True
  • 13)islower(isupper)

功能:是否全部是小写(大写)

islower

例子:

1 name = 'hexin'
2 name1 = 'Hexin'
3 v = name.islower()
4 i = name1.islower()
5 print(v)
6 print(i)

输出:

True
False
  • 14)isprintable

功能:是否包含隐含的XX(包含\n,\t等不可见字符为False)

isprintable

例子:

1 name = 'hexindas\talj,hexin'
2 v = name.isprintable()
3 print(v)

输出:

False
  • 15)join

功能:元素拼接

join

例子:

1 name = 'hexin'
2
3 v = "_".join(name) # 内部循环每个元素
4 print(v)
5
6 name_list = ['1','2','3','4']
7 v = "+".join(name_list)
8 print(v)

输出:

h_e_x_i_n
1+2+3+4
  • 16)rjust,ljust

功能:左右填充,类似center

ljust

例子:

1 name = 'hexin'
2 v = name.ljust(14,'*')
3 i = name.rjust(6,'*')
4 print(v)
5 print(i)

输出

hexin*********
*hexin
  • 17)maketrans,translate

功能:创建对应关系,翻译转换

maketrans

例子:

1 m = str.maketrans('aeiou','12345') # 对应关系
2 name = "akpsojfasdufasdlkfj8ausdfakjsdfl;kjer09asdf"
3 v = name.translate(m)
4 print(v)

输出:

1kps4jf1sd5f1sdlkfj815sdf1kjsdfl;kj2r091sdf
  • 18)partition

功能:分割,保留分割的元素

partition

例子:

1 content = "9SB6SB6"
2 v = content.partition('SB') # partition
3 print(v)

输出:

('9', 'SB', '6SB6')
  • 19)replace

功能:替换

replace

例子:

1 content = "1SB2SB3SB4"
2 v = content.replace('SB','Love')
3 print(v)
4 v = content.replace('SB','Love',1)
5 print(v)

输出:

1Love2Love3Love4
1Love2SB3SB4
  • 20)strip

功能:移除空白,\n,\t, 自定义

strip

例子:

1 name = 'hexin \t'
2 v = name.strip() # 空白,\n,\t
3 print(v)

输出:

hexin
  • 21)zfill

功能:填充0

zfill

例子:

1 name = 'hexin'
2 v = name.zfill(20)
3 print(v)

输出:

000000000000000hexin

2.整数

类int

  • 1)bit_length

功能:当前整数的二进制表示的最少位数

bit_length

例子:

age = 4 # 100
print(age.bit_length())

输出:

3

  • 2)to_bytes

功能:获取当前数据的字节表示

to_bytes

例子:

age = 15
v = age.to_bytes(10,byteorder='big')
v = age.to_bytes(10,byteorder='little')
print(v)

输出:

b'\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00'

3.list列表

类list

可变类型

  • 1)append

功能:追加

append

例子:

user_list = ['tom','刘','jack','n'] # 可变类型
user_list.append('hex')
print(user_list)

输出

['tom', '刘', 'jack', 'n', 'hex']
  • 2)clear

功能:清空

例子:

user_list = ['tom','刘','jack','n'] # 可变类型
user_list.clear()
print(user_list)

输出:

[]
  • 3)copy

功能:浅拷贝

例子:

user_list = ['tom','刘','jack','n']
t = user_list.copy()
print(user_list)
print(t)

输出:

['tom', '刘', 'jack', 'n']
['tom', '刘', 'jack', 'n']
  • 4)count

功能:计数

例子:

user_list = ['tom','n','刘','jack','n','n']
t = user_list.count('n')
print(user_list)
print(t)

输出:

['tom', 'n', '刘', 'jack', 'n', 'n']
3
  • 5)extend

功能:扩展原列表

例子:

user_list = ['tom','n','刘','jack','n','n']
user_list.extend('9')
print(user_list)

输出:

['tom', 'n', '刘', 'jack', 'n', 'n', '9']
  • 6)index

功能:查找元素索引,没有报错

例子:

user_list = ['tom','n','刘','jack','n','n']
v = user_list.index('n')
print(v)

输出:

1

  • 7)pop

功能:删除并获取元素,索引

例子:

user_list = ['tom','n','刘','jack','n','n']
v = user_list.pop(1)
print(v)
print(user_list)

输出:

n
['tom', '刘', 'jack', 'n', 'n']
  • 8)remove

功能:删除,值

例子:

user_list = ['tom','n','刘','jack','n','n']
user_list.remove('n')
print(user_list)

输出:

['tom', '刘', 'jack', 'n', 'n']
  • 9)reverse

功能:翻转

例子:

user_list = ['tom','n','刘','jack','n','n']
user_list.reverse()
print(user_list)

输出:

['n', 'n', 'jack', '刘', 'n', 'tom']
  • 10)sort

功能:排序

例子:

num = [11,2,3,6,111]
num.sort()
print(num)
num.sort(reverse=True)
print(num)

输出:

[2, 3, 6, 11, 111]
[111, 11, 6, 3, 2]

4.range

  • 1)创建

py2.7:立即生成数字

range(1,11) # 生成 1,23,,4,56.10

py3:不会立即生成,只有循环迭代,才一个个生成;

for i in range(1,11):
    print(i)

for j in range(1,11,2):
    print(j)

for k in range(10,0,-1):
    print(k)
1
2
3
4
5
6
7
8
9
10
1
3
5
7
9
10
9
8
7
6
5
4
3
2
1

例子

# li = ['eric','alex','tony']
# for i in range(0,len(li)):
# ele = li[i]
# print(ele)

li = ['eric','alex','tony']
for i in li:
print(i)

# for i in range(0,len(li)):
# print(i+1,li[i])

输出

eric
alex
tony

5.enumerate

功能:额外生成一列有序的数字

例子

li = ['eric','alex','tony']
for i,ele in enumerate(li,1):
    print(i,ele)

#1 eric
#2 alex
#3 tony
li = ['eric','alex','tony']
for i,ele in enumerate(li,1):
    print(i,ele)

v = input('请输入商品序号:')
v = int(v)
item = li[v-1]
print(item)

#1 eric
#2 alex
#3 tony
#请输入商品序号:1
#eric

6.tuple元组

不可被修改类型,儿子不可被修改,孙子可以

  • 1)创建
user_tuple = ('hex','eric','seven','hex')
  • 2)count

功能:获取个数

user_tuple = ('hex','eric','seven','hex')
v = user_tuple.count('hex')
print(v)

#2
  • 3)index

功能:获取值得第一个索引位置

user_tuple = ('hex','eric','seven','hex')
v = user_tuple.index('hex')
print(v)

#0
  • 4)注意:元组最后加逗号

例子

li = ('hx',)
print(li)
  • 5)本身不可修改,但是孙子可以

user_tuple = ('alex','eric','seven',['1','2','3'],'a4')
# user_tuple[0] = 123 执行错误
# user_tuple[3] = [11,22,33] 执行错误
user_tuple[3][1] = '0'
print(user_tuple)

7.dict

可变类型

  • 1)clear

功能:清空

dic = {'k1':'v1','k2':'v2'}
dic.clear()
print(dic)
  • 2)copy

功能:浅拷贝

dic = {'k1':'v1','k2':'v2'}
v = dic.copy()
print(v)
  • 3)get

功能:根据key获取指定value,不存在不报错

dic = {'k1':'v1','k2':'v2'}
v = dic.get('k1111',1111)
print(v)
  • 4)pop

功能:删除并获取对应的value值

# dic = {'k1':'v1','k2':'v2'}
# v = dic.pop('k1')
# print(dic)
# print(v)

输出:

{'k2': 'v2'}
v1
  • 5)popitem

功能:随机删除键值对,并获取到删除的键值

dic = {'k1':'v1','k2':'v2'}
v = dic.popitem()
print(dic)
print(v)

输出:

{'k1': 'v1'}
('k2', 'v2')
dic = {'k1':'v1','k2':'v2'}
k,v = dic.popitem() # ('k2', 'v2')
print(dic)
print(k,v)

输出:

{'k2': 'v2'}
k1 v1
dic = {'k1':'v1','k2':'v2'}
v = dic.popitem() # ('k2', 'v2')
print(dic)
print(v[0],v[1])

输出:

{'k1': 'v1'}
k2 v2
  • 6)setdefault

功能:增加,如果不存在即删除

dic = {'k1':'v1','k2':'v2'}
dic.setdefault('k3','v3')
print(dic)
dic.setdefault('k1','1111111')
print(dic)

输出:

{'k2': 'v2', 'k1': 'v1', 'k3': 'v3'}
{'k2': 'v2', 'k1': 'v1', 'k3': 'v3'}
  • 7)update

功能:批量增加或修改

dic = {'k1':'v1','k2':'v2'}
dic.update({'k3':'v3','k1':'v24'})
print(dic)

输出:

{'k1': 'v24', 'k2': 'v2', 'k3': 'v3'}
  • 8)fromkeys

功能:从序列键和值设置为value来创建一个新的字典。

例子:

dic = dict.fromkeys(['k1','k2','k3'],123)
dic['k1'] = 'asdfjasldkf'
print(dic)

输出:

{'k2': 123, 'k1': 'asdfjasldkf', 'k3': 123}

8.set

集合,不可重复列表,可变类型。

  • 1)创建
s1 = {"alex",'eric','tony'}
print(type(s1))
print(s1)

输出:

<class 'set'>
{'alex', 'eric', 'tony'}
  • 2)difference

功能:输出s1中存在,s2中不存在的值

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
v = s1.difference(s2)
print(v)

输出:

{'ii'}
  • 3)difference_update

功能:s1中存在,s2中不存在,然后对s1清空,然后在重新赋值

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
s1.difference_update(s2)
print(s1)

输出:

{'ii'}
  • 4)symmetric_difference

功能:s1中存在,s2中不存在的值及s2中存在,s1中不存在的值

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
v = s1.symmetric_difference(s2)
print(v)
{'ii', 'hexin'}
  • 5)intersection

功能:交集

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
v = s1.intersection(s2)
print(v)

输出:

{'eric', 'alex', 'tony'}
  • 6)union

功能:并集

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
v = s1.union(s2)
print(v)

输出:

{'alex', 'hexin', 'eric', 'ii', 'tony'}
  • 7)discard

功能:移除

s1 = {"alex",'eric','tony','ii'}
s2 = {"alex",'eric','tony','hexin'}
s1.discard('alex')
print(s1)

输出:

{'eric', 'tony', 'ii'}
  • 8)update

功能:添加

s1 = {"alex",'eric','tony','李泉','李泉11'}
s1.update({'alex','123123','fff'})
print(s1)

输出:

{'fff', '李泉', '123123', 'tony', 'alex', 'eric', '李泉11'}

9.布尔值

  • 创建
a = True
b = Flase
 
  • 转换
数字转换只有0是Flase,字符串只有""为Flase
v = bool(12)
print(v)

二、基本运算

1.算数运算:

注:运算符的执行顺序,从前往后

2.比较运算:

3.赋值运算:

4.逻辑运算:

5.成员运算:

【Python之基本数据类型 基本运算】的更多相关文章

  1. python 基础之数据类型

    一.python中的数据类型之列表 1.列表 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 二.列表常用操作 >切片>追加>插入>修改& ...

  2. Python学习 之 数据类型(邹琪鲜 milo)

    1.Python中的数据类型:数字.字符串.列表.元组.字典 2.数字类型包括整型.长整型.浮点型.复数型 type(number):获取number的数据类型 整型(int):范围:-2,147,4 ...

  3. (八)python的简单数据类型和变量

    什么是数据类型? 程序的本质就是驱使计算机去处理各种状态的变化,这些状态分为很多种. 例如英雄联盟游戏,一个人物角色有名字,钱,等级,装备等特性,大家第一时间会想到这么表示 名字:德玛西亚------ ...

  4. Python基础之数据类型

    Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...

  5. Python学习之数据类型

    整数 Python可以处理任意大小的整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如: ...

  6. python的组合数据类型及其内置方法说明

    python中,数据结构是通过某种方式(例如对元素进行编号),组织在一起数据结构的集合. python常用的组合数据类型有:序列类型,集合类型和映射类型 在序列类型中,又可以分为列表和元组,字符串也属 ...

  7. python学习第九讲,python中的数据类型,字符串的使用与介绍

    目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...

  8. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  9. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

随机推荐

  1. ios 关于时间戳与时间转化的笔记

    linux系统获取时间戳的方法:time() ; 时间戳转换成需要的时间格式: NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; [f ...

  2. HTML5新特性-多线程(Worker SharedWorker)

    There is no doubt that JavaScript是没有多线程之说的,他只能一件事一件事的做,做完一件事再做下一件事,假如你的js要花一段比较长的时间做一件事的话,那么浏览器将会卡顿一 ...

  3. TCP/IP笔记(六)TCP与UDP

    终于来到了传输层,这个面试问的最多了,内容比较多,要分两篇来总结,这是第一篇

  4. IEnumerable<T>和IQueryable<T>

    建议29.区别LINQ查询中的IEnumerable<T>和IQueryable<T> LINQ查询方法一共提供了两类扩展方法,在System.Linq命名空间下,有两个静态类 ...

  5. linux性能之iostat

    在使用linux系统的过程中,总是可能需要当前io性能的状态信息是怎么样?这里就就是一下iostat,可以通过iostat来初步查看io的状态信息. 1.常用方式 iostat -xdk 1 10 或 ...

  6. 微信小程序框架

    框架 小程序开发框架的目标是通过尽可能简单.高效的方式让开发者可以在微信中开发具有原生 APP 体验的服务. 框架提供了自己的视图层描述语言 WXML 和 WXSS,以及基于 JavaScript 的 ...

  7. 浅析SQL Server数据库中的伪列以及伪列的含义

    SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个 ...

  8. rsyslog管理分布式日志

    [TOC] 背景 有一个4台机器的分布式服务,不多不少,上每台机器上查看日志比较麻烦,用Flume,Logstash.ElasticSearch.Kibana等分布式日志管理系统又显得大材小用,所以想 ...

  9. 【持久化框架】Mybatis简介与原理

    从这篇博文开始我们学习一下Mybatis,希望大家提出宝贵的建议. 什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache softwar ...

  10. SQL Server中INNER JOIN与子查询IN的性能测试

    这个月碰到几个人问我关于"SQL SERVER中INNER JOIN 与 IN两种写法的性能孰优孰劣?"这个问题.其实这个概括起来就是SQL Server中INNER JOIN与子 ...