python 基础 一 ---**变量及基本数据类型介绍**

python 基础

           ---**变量及基本数据类型之学习总结**

变量

  • 变量定义:在程序运行过程中,其值可以改变的量。(具有名字的一段存储空间)。
  • 标识符命名规范:
    • 只能由数字、字母、下划线组成
    • 不能以数字开头
    • 不能是系统的关键字(有特殊意义的语法字符串)
  • 命名原则
    - 尽量要见名知意 (看到变量大致知道是什么意思)
    - 尽量使用英文,实在不行时使用中文全拼
    - 推荐命名方式:采用小写+下划线,如:user_name
a = 10
# 统一赋值
b = c = d = 20
# 对称赋值
e, f = 30, 40
# 删除变量
del a
  • 常量:
    - python中没有常量,通常我们会使用大写加下划线的方式模拟常量,如:USER_NAME = 'xiaoming'

**

数据类型

说明:编程语言中不同的数据类型都是为了解决生活中的实际问题而出现的,每种类型都有相关的运算。

  • python中常用数据类型:整型、浮点、布尔、字符串、列表、元组、字典、集合等
  • 整型(int):就是数学中的整数
  • 浮点(float):python的浮点数就是数学中的小数
  • 布尔(bool):对应于生活中的真假逻辑,只有两个值True/False
  • 空(NoneType):空类型,只有一个值None,表示该值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
  • 字符串(str):使用引号括起来的一串字符,可以使用一对单引号、一对双引号、三对单引号、三对双引号,例如
s1='hello'
s2='world'
s1+s2 # helloworld
s2+s1 # wolrdhello
s1*3  # hellohellohello;可以重复'*'前面的字符串若干次

s = 'I love you more than i can say'
# 切割字符串
#sep:指定按照什么进行切割,默认按照空格切割
#maxsplit:指定最大切割次数,默认不限次数
ret=s.split(sep='m',maxsplit=1)#结果为一个列表
#s.rsplit(sep='m',maxsplit=1),从右边进行切割

# 按照换行进行切割
print(s.splitlines())
#字符串拼接;jion
s2='*'.join(lt)#用*把lt中的元素拼接起来
#示例
s=['1','2','3']
print('='.join(s))#结果为1=2=3

s = 'Hi buddy, if you have something to say, than say; if you have nothing to say, than go.'
#子串查找:找到首次出现的位置,返回下标,找不到返回-1
s.find('hello')

#从后面查找
s.rfind('hello')

# 统计子串出现的次数
  s.count('if')
  
# 判断是否已指定内容开头
  s.startswith('Hi')
  
# 判断是否已指定内容结尾
  s.endswith('go.')
  
#strip、lstrip、rstrip   

#s[i]根据下标提取字符;从开头提取,下标从0开始,从末尾提取,下标从-1开始

#切片  格式:s[开始的下标:结束的下标:步进值],步进值默认为1(),提取元素不包括结束下标的元素
s[1:4]#从下标为1开始,到下标3的元素,下标4的元素不包括
s[2:],s[:5]#当一边省略时,则提取到该侧的边缘
s[::-1]#逆序提取
#全转换为大写
s.upper()
#全转换为小写
s.lower()
#大小写转换(互相转换)
s.swapcase( )
#首字母大写
s.capitalize()
#每个单词首字母大写
s.title()
#用用指定内容替换指定内容,还可以指定替换次数
s.replace('a','b',2)#用b代替a
#判断是否是全大写
s.isupper()
#是否是全小写
s.islower()
# 是否每个单词首字母都大写
s.istitle()
# 是否是全数字字符
s.isdecimal()
# 是否是全字母
s.isalpha()
# 是否是全字母或数字
s.isalnum()
#判断字符串是否以'a'结尾,结果为True或False
s.endswith('a')
#判断字符串是否以'a'开头,结果为True或False
s.startswith('a')
  • 列表(list):通过[]进行定义,可以存放一系列的任意数据,是一种容器类型
lt=[1,3,4,'abc',True ]
print(type(lt))
#<class 'list'>
# 通过下标获取元素,有越界问题;索引值以 0 为开始值,-1 为从末尾的开始位置。
print(lt[1])
#结果:3
#修改元素,根据下标
lt[i]=3 #修改下标为i元素,修改为3
#列表切片类似字符串lt[1:4:1]

#追加元素,使用append,将传递的元素作为整体追加的列表尾部
lt.append([123,45])
#extend,将可迭代的对象展开添加到列表
lt.extend([123,45])
##在下标为i的位置,插入元素
lt.insert(i,23)
#删除元素,根据下标
del lt[i]
#删除指定元素,只会删除第一个
lt.revome(230)
#返回并删除元素:返回并删除指定下标的元素,默认最后一个
lt.pop(i)
print(lt)

##index,查询指定元素在列表中的索引号(下标),找到就返回索引号,
#即第一次出现的位置,如无列表会报错
lt.index(234)
#count;统计指定元素在列表中出现的次数
lt.count(234)
#逆序
lt.reverse()
#排序,reverse=True 表示降序,
lt.sort(reverse=True)#sort()默认为升序
  • 元组(tuple):通过()进行定义,可以作为容器存放任意数据,元素是不可修改的
#元组之间可以之间拼接
tp= (1,3,5)
tp1=('w','e',)
print(tp+tp1)#(1, 3, 5, 'w', 'e')
#tp*3 可以重复指定次数
#len(tp)统计元素个数
#切片
tp[开始:结束:步进值]#字符串,列表类似	
#tp.index('s') 获取指定元素下标,首次出现位置
#tp.count('s')统计指定元素出现的次数
#最大值 max(tp)
# 最小值  min(tp)
  • 集合(set)::通过{}进行定义,可以作为容器存放任意数据,但是元素是不能重复的,且是无序的,类似数学中的集合
#交集 ,两个集合都有的元素
s1 & s2  s1.intersextion(s2)
#并集:两个集合相加
s1|s2  print(s1.union(s2))
# 求交集,并用交集覆盖原来的集合
 s1.intersection_update(s2)
#差集:前者有,而后者没有
s1-s2 s1.difference(s2)
# 判断是否没有交集
print(s1.isdisjoint(s2))#有交集返回False,无交集返回True
# 判断是否是另一集合的子集
print(s1.issubset(s2)) #判断s1是否是s2子集的
# 判断是否是另一集合的父集/超集
print(s2.issuperset(s1))#判断s2是否是s1的父集的

#集合无重复项,可用于去重操作
s = {'彦炯', '露露', '彦博', '启明', '吕威', '二狗'}
#增加元素
s.add('dahua')
#删除元素,不存在会报错
s.revome('dahua')
#discard,删除元素,不会报错
#返回并删除元素,元素是随机的
s.pop()
#清空元素 与列表类似
s.clear()

# 定义空集合不能使用{},这是留给定义空字典使用的, 应该使用set()
  • 字典(dict):通过{}进行定义
    • 元素是由键值对组成的
    • 键和值之间是有’:'进行连接
    • 键是唯一的,而值可以是任意的
d={'name':'daming','age':23}
d['name']#根据键获取相应的值,键不存在,会报错KeyError
#get方法根据键获取值;若间不存在,不报错,会返回None
d.get('age')
#get方法可以设置默认值,有对应的值返回值;没有时会返回指定的默认值
d.get('shengao',178)
len(d)#可统计字典键值对个数
#修改元素,键存在就修改对应的值,键不存在则添加键值对
d['name']='sdf'
d['shengao']=178
#更新:键存在会覆盖,不存在键会添加
d.update({'name': 'dahua', 'weight': 50})
# 删除元素
# del d['weight']
# 返回并删除
print(d.pop('weight'))

# 清空元素
d.clear()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值