python_数据类型基本操作(2)
概览:
第1章 基础数据类型宏观的初识
第2章 int
第3章 bool
第4章 str
4.1 python体现形式
4.2 引号用法
4.3 字符串运算
4.3.1 字符串相加
4.3.2 字符串相乘
4.4 字符串参数
4.5 字符串取值
4.5.1 索引
4.5.2 切片
4.6 判断字符串组成
第5章 list()
5.1 列表操作(增)
5.2 列表操作(删)
5.3 列表操作(改)
5.4 列表操作(查)
5.5 基础练习
5.6 方法练习
5.7 列表的嵌套
第6章 tuple
6.1 元组的元素性质
6.2 range
第7章 dict
7.1 定义
7.2 字典操作增)
7.3 字典操作(删)
7.4 字典操作(改)
7.5 字典操作(查)
7.6 字典的嵌套
第8章 比较运算符
8.1 比较运算逻辑
第9章 格式化输出
9.1 %用法
9.2 format(三种方法)
第10章 公共方法
10.1 len
10.2 count
第11章 数据类型之间的转换
11.1 list转换str
11.2 str转换int
11.3 int转换 str(1)
11.4 str转换 int(1)
11.5 int转换bool
11.6 bool 转换int
11.7 str转换bool
第12章 基础数据类型的补充
第13章 拾遗
13.1 分割元素的坑
13.2 %占位符
13.3 比较预算优先级
正文:
第1章 基础数据类型宏观的初识
l int:数字,加减产出等计算。
l str:字符串,存储少量的数据,进行简单的操作。
l list:列表,存储大量的数据
l tuple:元组,只读列表,
l dict:字典,查询速度快,存储的是关系型数据
例:
dict:{
'name':'san'
'age':1000,
}
l set:集合,对照两个数据的对应关系
第2章 int
解释:数字主要是用于计算用的,使用方法并不是很多
例:
v = 10
p = 11
print(v+p)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
21
第3章 bool
解释:两种状态True False
例:
v = 1
print(v.__bool__())
p = 0
print(bool(p))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
True
False
第4章 str
4.1 python体现形式
例:引号里面的内容。
count = '123'
print(count,type(count))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
123 <class 'str'>
4.2 引号用法
a)单双相结合
print("I'm a good boy.")
输出
I'm a good boy.
b)三引号的分行打印
'''
写一个购物车,写完了的写三级菜单。
购物车
功能要求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
'''
4.3 字符串运算
4.3.1 字符串相加
n = "abc"
m = "def"
print(n + m)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
abcdef
4.3.2 字符串相乘
n = "abc"
m = "def"
print(n * 3)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
abcabcabc
4.4 字符串参数
4.4.1 ++ capitalize
解释:首字母大写
n = "abc"
m = "def"
print(n.capitalize())
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
Abc
4.4.2 ++ swapcase
解释:大小写反转
m = "Def"
print(m.swapcase())
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
dEF
4.4.3 + title
解释:非字母隔开的单词首字母大写
m = "Def gh IjK lmN"
print(m.title())
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
Def Gh Ijk Lmn
4.4.4 + center
解释:设置总长度并居中
n = "abc"
m = "Def gh IjK lmN"
print(n.center(10,'*'))
输出
***abc****
4.4.5 +++upper /lower
解释:大写全小写
code = 'AwEqr'
username = input('>> 请输入用户名: ')
your_code = input('>> 请输入验证码: ')
if username == '王' and your_code.upper() == code.upper():
print('登录成功')
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
>> 请输入用户名: wang
>> 请输入验证码: aweqr
登录成功
4.4.6 +++startswith endswith
解释:判断以..开头或以..结尾,整体与个体都可以
m = "Def gh IjK lmN"
m1 = m.startswith('Def')
print(m1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
True
4.4.7 +++ s.strip()
解释:剔除前后空格,换行符,制表符,剔除内容也可以自定制
列1):剔除空格和制表符
s = ' wangXiaoxiao\t'
print(s)
print(s.strip())
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
wangXiaoxiao
wangXiaoxiao
例2):实际应用输出剔除空格
code = 'AwEqr'
username = input('>> 请输入用户名: ').strip()
your_code = input('>> 请输入验证码: ').strip()
if username == 'wang' and your_code.upper() == code.upper():
print('登录成功')
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
>> 请输入用户名: wang
>> 请输入验证码: aweqr
登录成功
例3):剔除自定制
s = 'abc countname abc'
s1 = s.strip('abc')
print(s1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
countname
4.4.8 ++lstrip
例:剔除左侧匹配字符
s = 'abc countname abc'
s1 = s.lstrip('abc')
print(s1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
countname abc
4.4.9 +++replace
解释:替换
例1)
s = 'my name is supman ,supman is good man'
s1 = s.replace('supman','chaoren')
print(s1)
输出:
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
my name is chaoren ,chaoren is good man
例2)只替换一处
s = 'my name is supman ,supman is good man'
s1 = s.replace('supman','chaoren',1)
print(s1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
my name is chaoren ,chaoren is good man
4.4.10 ++++ split
本章重点:分割字符串转换为列表
1)split:按某种格式进行分割,默认以空格进行切分,输出结果为列表的形式
s = 'my name is supman ,supman is good man'
s1 = s.split()
print(s1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['my', 'name', 'is', 'supman', ',supman', 'is', 'good', 'man']
2)既有中文逗号也有英文逗号分割方法:替换成英文再分割
s = 'my name is supman ,supman ,is good man'
s1 = s.replace(',',',')
print(s1)
print(s1.split(','))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
my name is supman ,supman ,is good man
['my name is supman ', 'supman ', 'is good man']
4.4.11 +++find
解释:find找不到返回-1,index找不到会报错
s = 'superman'
s1 = s.find('e')
s2 = s.find('w')
print(s1,type(s1))
print(s2)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
3 <class 'int'>
-1
4.4.12 +++index
s = 'superman'
s1 = s.index('w')
print(s1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
Traceback (most recent call last):
File "D:/python/untitled2/python_auto/lianxi2.py", line 147, in <module>
s1 = s.index('w')
ValueError: substring not found
4.5 字符串取值
4.5.1 索引
s = 'sadfdsfdsjfkdsf'
s1=s[0]
print(s1,type(s1))
输出
s <class 'str'>
倒序查找
s1=s[-1]
print(s1,type(s1))
头不顾尾
s2 = s[0:3]
print(s2)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
sad
4.5.2 切片
解释:s[起始多音:结束索引+1:步长]
1)全取
s3 = s[:-1]
s4 = s[:]
print(s3)
print(s4)
输出
sadfdsfdsjfkds
sadfdsfdsjfkdsf
2)步长
s5 = s[:5:2]
#倒序切片要在后面加步长
s6 = s[-1:-5:-1]
s6 = s[11::1]
print(s6)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
kdsf
3)倒序取全
s5 = s[:-1]
print(s5)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
sadfdsfdsjfkds
4.6 判断字符串组成
例:
name = '123'
#判断字符串是由字母或者数字组成
print(name.isalnum())
#判断是由字符串组成
print(name.isalpha())
#判断是否有数字组成
print(name.isdigit())
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
True
False
True
第5章 list()
l 列表按照切片切出来的是列表
l 列表按照索引取值,要看原来属性
5.1 列表操作(增)
5.1.1 append()
l = ['chuang','qian','ming','yue']
l.append('guang')
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['chuang', 'qian', 'ming', 'yue', 'guang']
5.1.2 insert
解释: 按照索引添加
l.insert(0,'libai')
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['libai', 'chuang', 'qian', 'ming', 'yue']
Process finished with exit code 0
5.1.3 extend
解释:迭代追加,最小组成元素被逗号隔开,追加到最后
l.extend(['yi','shi','di','shang','shuang'])
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['chuang', 'qian', 'ming', 'yue', 'yi', 'shi', 'di', 'shang', 'shuang']
5.2 列表操作(删)
5.2.1 pop(返回值)
解释:按照索引删除,并且有返回值
l.pop(0)
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['qian', 'ming', 'yue']
返回值:为删除的元素
print(l.pop(0))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
chuang
5.2.2 remove
解释:按照元素删除
l.remove('chuang')
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['qian', 'ming', 'yue']
5.2.3 clear
解释:清空列表,将整个列表在内存中删除
l.clear()
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[]
5.2.4 del
解释:按照切片删
del l[2:]
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['chuang', 'qian']
5.3 列表操作(改)
5.3.1 按索引改
l[0] = '床'
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['床', 'qian', 'ming', 'yue']
5.3.2 按照切片改
解释:按照区域将内容清空迭代添加
l[:] = '床','前','明','月'
print()
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['床', '前', '明', '月']
2)添加步长进行修改
l[:3:2] = '床','月'
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['床', 'qian', '月', 'yue']
5.4 列表操作(查)
5.4.1 for 循环看
for i in l :
print(i)
5.4.2 sort
解释:列表正序排序(需要数字组成)
l = [9787,83,202,10]
l.sort()
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[10, 83, 202, 9787]
5.4.3 sort(reverse=True)
解释:倒序排序(需由数字组成)
l = [9787,83,202,10]
l.sort()
print(l)
输出
D:/python/untitled2/python_auto/lianxi2.py
[9787, 202, 83, 10]
5.4.4 reverse
解释:翻转
l = [9787,83,202,10]
l.reverse()
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[10, 202, 83, 9787]
5.5 基础练习
列表取值
li = [1,(2,3),2,3,4,5,6,]
l1 = li[:3]
print(l1)
print(li[0],type(li[0]))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[1, (2, 3), 2]
1 <class 'int'>
5.6 方法练习
l = ['chuang','qian','ming','yue']
#追加
l.append('guang')
#按照索引添加
l.insert(1,'ok')
#按照元素添加
l.extend(['yi','shi','di','shang','shuang'])
#查看
print(l)
#按照索引删除
l.pop(1)
#按照切片删除
del l[5:]
#遍历查询
for i in l :
#输出
print(i)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
['chuang', 'ok', 'qian', 'ming', 'yue', 'guang', 'yi', 'shi', 'di', 'shang', 'shuang']
chuang
qian
ming
yue
guang
5.7 列表的嵌套
例1):将wang 首字母大写
l = [1,2,'wang',['xiao','dong',100],8]
l[2] = l[2].capitalize()
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[1, 2, 'Wang', ['xiao', 'dong', 100], 8]
例2)让100通过数字加1的形式101
l[3][-1] = str(l[3][-1] + 1)
print(l)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
[1, 2, 'wang', ['xiao', 'dong', '101'], 8]
第6章 tuple
6.1 元组的元素性质
解释:直属元组中的元素是只读的
例1):元组中插入元素报错
tu1=(12,34,[5,6],78)
tu1[0].append(666)
print(tu1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
Traceback (most recent call last):
File
"D:/python/untitled2/python_auto/lianxi2.py", line 203, in
<module>
tu1[0].append(666)
AttributeError: 'int' object has no attribute
'append
例2):元组内含列表,在列表中插入元素可以
tu1=(12,34,[5,6],78)
tu1[2].append(666)
print(tu1)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
(12, 34, [5, 6, 666], 78)
6.2 range
6.2.1 正向取值
解释:顾首不顾尾,可以加步长
for i in range(2,12,3):
print(i)
输出
D:/python/untitled2/python_auto/lianxi2.py
2
5
8
11
6.2.2 反向取值
for i in range(12,1,-3):
print(i)
输出
D:/python/untitled2/python_auto/lianxi2.py
12
9
6
3
第7章 dict
7.1 定义
字典:
l
key-values存储,可以存储大量的关系型数据,查询速度非常快
l
字典的键,必须是唯一的,不可以重复,而且是不可变的数据类型,value可以为任意数据类型或者对象
l
数据类型:
不可变类型(可哈希):int str tuple bool
可变类型(不可哈希):dict
lis set
l
在3.5版本包括3.5之前,都是无序的
7.2 字典操作(增)
7.2.1 依键加值
解释:无则增加有则修改
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['hobby'] = 'fly'
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
{'name': 'superman', 'age': 18, 'sex': 'man',
'hobby': 'fly'}
7.2.2 setdefault(无则添加)
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['hobby'] = 'fly'
dic.setdefault('high',180)
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
{'name': 'superman', 'age': 18, 'sex': 'man',
'hobby': 'fly', 'high': 180}
7.2.3 setdefault(有则不改)
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['hobby'] = 'fly'
dic.setdefault('name','超人')
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
{'name': 'superman', 'age': 18, 'sex': 'man',
'hobby': 'fly'}
7.3 字典操作(删)
7.3.1 pop(返回值)
解释:按照键来删除,删除整个键值对;没有键值报错,有返回值,返回值
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['hobby'] = 'fly'
print(dic.pop('name'))
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
superman
{'age': 18, 'sex': 'man', 'hobby': 'fly'}
7.3.2 无则报错
dic.pop('name1')
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
Traceback (most recent call last):
File
"D:/python/untitled2/python_auto/lianxi2.py", line 226, in
<module>
dic.pop('name1')
KeyError: 'name1
7.3.3 解决报错,加返回值
dic.pop('name1',None)
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
{'name': 'superman', 'age': 18, 'sex': 'man',
'hobby': 'fly'}
7.3.4 3.5版本区别
解释:3.5以前随机删有返回值,返回元组
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['hobby'] = 'fly'
print(dic.popitem())
print(d
输出
D:/python/untitled2/python_auto/lianxi2.py
('hobby', 'fly')
{'name': 'superman', 'age': 18, 'sex': 'man'}
7.3.5 clear
7.3.6 del
1.删除整个字典
2.按照键去删除键值对:用pop比较好
7.4 字典操作(改)
7.4.1 依据键来改
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic['name'] = '超人'
print(dic)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
{'name': '超人', 'age': 18,
'sex': 'man'}
7.4.2 update
解释:覆盖并更新
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
dic1 ={
'name':
'超人',
'age':
18,
'sex': '男',
}
dic.update(dic1)
print(dic)
输出
D:/python/untitled2/python_auto/lianxi2.py
{'name': '超人', 'age': 18,
'sex': '男'}
7.5 字典操作(查)
7.5.1 根据key
查有则输出:
dic1 ={
'name':
'超人',
'age':
18,
'sex': '男',
}
print(dic['name'])
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
超人
无则报错:
print(dic['name1'])
输出
line 230, in <module>
print(dic['name1'])
KeyError: 'name1'
7.5.2 get(返回值)
解释:get取值不会报错会有返回值,并且可以设定返回值
dic1 ={
'name':
'超人',
'age':
18,
'sex': '男',
}
print(dic1.get('name1'))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
None
7.5.3 for循环
dic.keys()#类似于列表的容器,可以for循环,没有索引,默认打印键
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
for key in dic.keys():
print(key)
输出
D:/python/untitled2/python_auto/lianxi2.py
name
age
sex
7.5.4 dic.values()
print(dic.values())
输出
D:/python/untitled2/python_auto/lianxi2.py
dict_values(['superman', 18, 'man'])
7.5.5 dic.items()
print(dic.items())
输出
D:/python/untitled2/python_auto/lianxi2.py
dict_items([('name', 'superman'), ('age', 18),
('sex', 'man')])
7.5.6 k,v赋值
解释:分别赋值取出key,velus
dic = {
'name':'superman',
'age':18,
'sex':'man',
}
for k,v in dic.items():
print(k,v)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
name superman
age 18
sex man
7.6 字典的嵌套
例1:对字典中的列表追加一个元素'guanyu'
dic =
{'name_list':['chaoren','zhizhuxia'],1:{...}}
dic['name_list'].append('guanyu')
print(dic)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
{'name_list': ['chaoren', 'zhizhuxia', 'guanyu'],
1: {Ellipsis}}
例2:在循环一个字典时,不要改变字典的大小
dic =
{'k1':'v1','k2':'v2','k3':'v3','name':'chaoren'}
for k in dic:
if 'k'
in k:
dic.pop(k)
print(dic)
输出
\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
Traceback (most recent call last):
File
"D:/python/untitled2/python_auto/lianxi2.py", line 233, in
<module>
for k in
dic:
RuntimeError: dictionary changed size during
iteration
例3:解决方法
dic =
{'k1':'v1','k2':'v2','k3':'v3','name':'chaoren'}
l1 = []
for i in dic:
if 'k'
in i:
l1.append(i)
print(l1)
for i in l1:
del
dic[i]
print(dic)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
['k1', 'k2', 'k3']
{'name': 'chaoren'}
第8章 比较运算符
8.1 比较运算逻辑
优先级: () >
not > and > or
print(1 > 2 and 3 < 4 or 4 > 5 and 2 >
1 or 9 < 8)
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
False
or巧记:
#x or y is Trus ,return x
print(3 or 4)
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
3
第9章 格式化输出
9.1 %用法
例1:
name = input('>>请输入你的名字: ')
age = input('>>请输入你的年龄: ')
job = input('>>请输入你的职业: ')
hobbie = input('>>请输入你的爱好: ')
msg ='''_______________info of %s____________
Name :%s
Age : %d
Job : %s
Hobbie : %s
_______________________end___________
'''\
%
(name,name,int(age),job,hobbie)
print(msg)
输出
C:\python3\python.exe
D:/python/untitled2/python_2/格式化输出.py
>>请输入你的名字: 超人
>>请输入你的年龄: 18
>>请输入你的职业: 世界警察
>>请输入你的爱好: 拯救世界
_______________info of 超人____________
Name :超人
Age : 18
Job : 世界警察
Hobbie : 拯救世界
_______________________end___________
例2:
name = input('>>your names: ')
age = input('>> your ages: ')
sex = input('>>your sex :')
print("my name is '%s,my age is %s,my sex is
%s." %(name,age,sex))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
>>your names: wang
>> your ages: 17
>>your sex :man
my name is 'wang,my age is 17,my sex is man.
9.2 format(三种方法)
三种方法:
1)按照索引顺序
s = "我叫{},今年{},爱好{}"
s1 = s.format('超人','18','维护和平')
print(s1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
我叫超人,今年18,爱好维护和平
2)重复项一次添加,优越%s特殊之处
s = "我叫{0},今年{1},爱好{2},大家都知道{0},"
s1 = s.format('超人','18','维护和平')
print(s1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
我叫超人,今年18,爱好维护和平,大家都知道超人,
3)键值对方法
s = "我叫{name},今年{age},爱好{hobby},大家都知道{name},"
s1 = s.format(name='超人',age='18',hobby='维护和平')
print(s1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
我叫超人,今年18,爱好维护和平,大家都知道超人,
第10章 公共方法
解释:所有数据类型通用
10.1 len
解释:统计长度
例:
s = 'superman'
print(len(s))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
8
10.2 count
解释:数出元素中字符串出现的次数s
s = 'superman'
print(s.count('m'))
输出:
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
1
第11章 数据类型之间的转换
11.1 list转换str
解释说明:+++join
1)用法:
字符串._join()
s = 'you are loser'
s1 = '*'.join(s)
print(s1,type(s1))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
y*o*u* *a*r*e* *l*o*s*e*r <class 'str'>
2)list转str
解释:列表转换成字符串,可迭代对象都适用
l1 = ['zhao','qian','sun','li']
s10 = ''.join(l1)
print(s10,type(s10))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
zhao qian sun li <class 'str'>
注意:!!!!列表里的元素必须都是字符串
11.2 str转换int
必要条件:字符串必须有数字组成
11.3 int转换 str(1)
s = 123
print(s,type(s))
s2 = str(s)
print(s2,type(s2))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
123 <class 'int'>
123 <class 'str'>
11.4 str转换 int(1)
s = '123'
print(s,type(s))
s2 = int(s)
print(s2,type(s2))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
123 <class 'str'>
123 <class 'int'>
11.5 int转换bool
0 是False,非0既是True
print(bool(100))
print(bool(-1))
print(bool(0))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
True
True
False
11.6 bool 转换int
print(int(True))
print(int(False))
输出
C:\python3\python.exe D:/python/untitled2/python_auto/lianxi2.py
1
0
11.7 str转换bool
非空既是True
print(bool(''))
print(bool('wang'))
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
False
True
第12章 基础数据类型的补充
for 循环每次删除后,列表发生变化,即不能得到最后的结果,再循环列表时不要随意改变列表的大小,
l1 = [11,44,55,66,77]
# del l1[1::2]
# print(l1)
for i in range(len(l1)):
if i % 2
== 1:
del
l1[i]
print(l1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
[11, 55, 66]
解决方法:
倒序删除
l1 = [11,44,55,66,77]
for i in range(len(l1)-1,-1,-1):
if i % 2
== 1:
del
l1[i]
print(l1)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
[11, 55, 77]
第13章 拾遗
13.1 分割元素的坑
1)当分割元素为首个元素时,分割空
s = 'my name is supman ,supman ,is good man'
s1 = s.replace(',',',')
print(s1)
s2 = s1.split('m')
print(s2)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
my name is supman ,supman ,is good man
['', 'y na', 'e is sup', 'an ,sup', 'an ,is good
', 'an']
2)分割次数
s = 'my name is supman ,supman ,is good man'
s1 = s.replace(',',',')
print(s1)
s2 = s1.split('m',2)
print(s2)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
my name is supman ,supman ,is good man
['', 'y na', 'e is supman ,supman ,is good man']
13.2 %占位符
l
%s 接收字符串和整型
l
%d 直接收字符串
l
转义%百分比与占位符
print('我叫%s,年龄是%s,学习进度2%%' % ('王',18)
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
我叫王,年龄是18,学习进度2%
13.3 比较预算优先级
13.3.1 优先级: () > not > and > or
print(1 > 2 and 3 < 4 or 4 > 5 and 2 >
1 or 9 < 8)
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
False
13.3.2 or巧记:
#x or y is Trus ,return x
print(3 or 4)
输出
C:\python3\python.exe
D:/python/untitled2/python_auto/lianxi2.py
3
python_数据类型基本操作(2)的更多相关文章
- Python_数据类型的补充、集合set、深浅copy
1.数据类型的补充 1.1 元组 当元组里面只有一个元素且没有逗号时,则该数据的数据类型与括号里面的元素相同. tu1 = ('laonanhai') tu2 = ('laonanhai') prin ...
- python_数据类型
数据类型 1.数字类型 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点.Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Pytho ...
- Redis数据类型基本操作
String类型: 设置键值对: set key value 设置键值对和过期时间:setex key seconds value ( 以秒为单位 ) 设置多个键值对: mset key1 value ...
- python数据类型基本操作
目录 1.字符串.... 1 2.列表[ ] 3 3.元组 ( ) 4 4.字典 { } 4 5.SET集合... 7 1.字符串 1.1查找字符串 find查找 >>> msg = ...
- python_数据类型_list
names = ['one','two','three','four','five'] #列表切片 print(names[0:]) #['one', 'two', 'three', 'four', ...
- python_数据类型_总结
- 文成小盆友python-num2 数据类型、列表、字典
一.先聊下python的运行过程 计算机是不能够识别高级语言的,所以当我们运行一个高级语言程序的时候,就需要一个“翻译机”来从事把高级语言转变成计算机能读懂的机器语言的过程.这个过程分成两类,第一种是 ...
- redis python操作
1.基于连接池方式实现对五个数据类型操作,每种数据类型2个操作 2.基于spring-data-redis 基于jedis来实现对五种数据类型操作,每种数据类型实现两个操作,包括事务 以上为基于jav ...
- Redis 学习笔记-5种数据类型的基本操作
1.string类型 基本操作列表: GET 获取指定键对应的值 SET 设定键值 DEL 删除指定键对应的值(对所有数据类型都有效) > set hello world OK > get ...
随机推荐
- java递归删除文件及目录
package base; import java.io.File; public class delete { public static void main(String[] args) ...
- POST & GET & Ajax 全解
GET&POST&Ajax 全解 一.POST和GET的差别 GET:GET方法提交数据不安全,数据置于请求行.客户段地址栏可见:GET方法提交的数据限制大小在255个字符之内.參数直 ...
- 基于Spring-SpringMVC-Mybatis的简单样例
复习下 好久没搞过撸过代码了! 这个样例包括一个完整的增删改查! 源代码地址http://download.csdn.net/detail/wangdianyong/8909903
- poj 2585 Window Pains 暴力枚举排列
题意: 在4*4的格子中有9个窗体,窗体会覆盖它之下的窗体,问是否存在一个窗体放置的顺序使得最后的结果与输入同样. 分析: 在数据规模较小且不须要剪枝的情况下能够暴力(思路清晰代码简单),暴力一般分为 ...
- Cocos2d-X-3.0 之后的版本的环境搭建
Cocos2d-X-3.0 之后的版本的环境搭建 由于cocos2d游戏开发引擎更新十分频繁,官方文档同步不够及时和完善.所以不要照着官方文档来照做生成工程. <点击图片就能进入网站> ...
- Ubuntu grub2的启动配置文件grub.cfg,为了修改另人生厌的时间
文章转自http://hi.baidu.com/detax/blog/item/90f18b54a8ef5253d00906e4.html 升级到Ubuntu 9.10后,就要接触grub2了,它和以 ...
- ABAP JSON
1 DATA: lv_em TYPE string, lv_em1 TYPE string. DATA: lt_but021 TYPE TABLE OF but021, lt_but0211 TYPE ...
- beyond compare 比较文本 standard alignment VS unaligned
在Rules里面 Standard Alignment 这种方式会比较找出相同的部分,可能会跨行找相同的 Unaligned 这种比较直接每一行之间相互比较,不跨行找相同的
- codeforces 688A A. Opponents(水题)
题目链接: A. Opponents time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- springmvc处理ajax跨域
解决跨域问题:在web.xml中配置corsFilter mvc.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 <!- ...