您的位置:首页 > 编程语言 > Python开发

1.5 python的数值和字符串 1.6 元组 1.7 列表

2018-11-21 08:42 190 查看

1.5 python的数值和字符串

python数据类型分类

数值 字符串 列表 元组 字典

数值类型

- 整型int
- 长整型long  //长整型后面会有一个L
- 浮点型float  //带小数点,科学计数法也属于浮点型
- 复数型complex  //后面带一个j

字符串类型

有三种方法定义字符串类型 - str = 'this is a string' - str = "this is a string" //python下,单双引号没有区别 - str = '''this is a string'''

三重引号(docstring)除了能定义字符串还可以用作注释。

a = "abcde" 字符串是一个序列,可用索引取值 a[起始下标 : 终止下标 : 步长]

a[0]="a" //取第一个值 a[-1]="e" //取最后一个 a[0:3]="abc" //取下标0到下标2

1.6 元组

字符串、列表和元组都是序列 序列的两个主要特点是索引操作符和切片操作符 - 索引操作符让我们可以从序列中抓取一个特定项目 - 切片操作符让我们能够获取序列的一个切片,即一部分序列。

###序列的基本操作

len():  求序列的长度
+:         连接2个序列
*:         重复序列元素
in:        判断元素是否在序列中
max(): 返回最大值
min(): 返回最小值
cmp(x, y):比较两个序列是否相等

元组tuple

元组和列表十分相似 元组和字符串一样是不可变的 - 元组可以存储一系列的值 - 元组通常用在用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。

t = ('a',2,(3,))
t = (1,)  //元组中只有一个元素的时候,要加 “,”

元组的操作

- 元组和字符串一样属于序列类型,可以通过索引和切片操作
- 元组值不可变

元组的拆分 - t = (1,2,3) a, b, c = t //a,b,c三个变量可以分别赋予元组的值

元组有两个方法

count() //统计元组数据个数 index() //输出数据下标

1.7 列表

列表(list)是处理一组有序项目的数据结构,即可以在列表中存储一个序列的项目。 列表是可变类型的数据 创建列表 - list1 = [] - list2 = list() - list3 = ['a',1,2]

列表操作

- 取值
切片和索引
- 添加
list.append()
- 删除
del list[]
list.remove(list[])   //删除第一个出现的value
- 修改
list[] = x
- 查找
var in list

· -插入 list.insert(value,object) //在对象前插入值 -排序 list.sort() -反序 list.reverse()

练习

练习1:

将 “123” 转换成整数 将 “9999999999999999999” 转换成长整数 将 “3.1415926” 转换成一个浮点数 将 123 转换成一个字符串 现有以下字符串 字符串1:" abc deFGh&ijkl opq mnrst((uvwxyz " 字符串2:" ABC#DEF GH%IJ MNOPQ KLRS&&TUVWX(&YZ " 使用字符串的各种方法转换成如下方式 ABCDEFGHIJKLMNOPQRSTUVWXYZzyxwvutsrqponmlkjihgfedcba

a = "123"
a= int(a)
b = "9999999999999999999"
b = long(b)
c = "3.1415926"
c = float(c)
d = 123
d = str(d)
str1 = " abc deFGh&*ijkl opq mnrst((uvwxyz "
str2 = " ABC#DEF GH%IJ MNOPQ KLRS&&TUVWX(*&YZ "

m = []
for i in list(str1) :
if i.isalpha():
m.append(i.lower())

m.reverse()
print str(m)
n = []
str3 = ""
for i in list(str2) :
if i.isalpha():
str3 = str3 + i
for i in m :
str3 = str3 + i
print str3

练习2:

现有列表 list1 = ['XXXX', 'b', 3, 'c', '&', 'a', 3, '3', 3, 'aa', '3', 'XXXX'] list2 = ['e', 'f', 'g'] 要求对其做以下操作:

  1. 取出 ‘XXXX’ 中间的部分,形成一个新的列表list3
  2. 对list3 做一下几部操作 1)删除特殊符号 2)统计 3 在list3中出现的次数 3)用最简短的代码去除list3中 26个字母以外的元素(要求只能对list3操作) 4)对list3排序 5)在末尾追加'd',并把list2追加到list3
  • 1、

    list1 = ['XXXX', 'b', 3, 'c', '&', 'a', 3, '3', 3, 'aa', '3', 'XXXX'] list2 = ['e', 'f', 'g'] list3 = [] n = 1 for i in list1 : if i == 'XXXX' : n = n * -1 continue if n == -1 : list3.append(i) print list3

  • 2、

    num3 = 0 listrm = [] for i in list3 : if not str(i).isalpha(): if not str(i).isalnum() : listrm.append(i) elif str(i) == '3' : num3 += 1 for i in listrm : list3.remove(i) print num3 print list3

    list3 = [i for i in list3 if str(i).isalpha()]

    list3.sort() list3.append("d") list3 = list3 + list2 print list3

练习3.

现有两个变量 a = ('h',) b = ('h') 1)将a和b分别追加到上一题的list3中,观察有什么区别 2)将1生成的list3转换成元组(扩展:自己搜索方法) 3)打印出只有一个元素'h'的元组,在2中生成的元组中的索引 a = ('h',) b = ('h') list3.append(a) lsit3.append(b) print list3

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python def