Python开发【1.4数据类型】

1、数字

数字数据类型用于存储数值。

他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。

# 创建对象
var1 = 1
var2 = 2

# 删除对象
del var1
del var1,var2

四种不同的数字类型

  • int(有符号整型)

  • long(长整型[也可以代表八进制和十六进制])

  • float(浮点型)

  • complex(复数)

2、字符串

字符串是由数字、字母、下划线组成。

str = 'Hello World'
 
print(str)                 #输出完整字符串
print(str[0])              #输出字符串中的第一个字符
print(str[2:5])            #输出字符串中第三个至第五个之间的字符
print(str[2:])             #输出从第三个开始到最后的字符串
print(str*2)               #输出字符串两次
print('say: ' + str)       #输出连接的字符串

转义字符:

\n表示换行,\t表示制表符;字符\本身也要转义,\\表示的字符就是\

如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r''表示''内部的字符串默认不转义

如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用'''...'''的格式表示多行内容

3、列表

1、特点:可重复,类型可不同

2、列表操作

列表定义

names = ["Alex","Tenglan","Eric","Rain","Tom","Amy"]

列表元素访问

# 打印第一个元素
print name[0]

# 打印最后一个元素
print name[-1]

切片

# 定义1个列表
names = ["Alex","Tenglan","Eric","Rain","Tom","Amy"]

# 取索引1到4的元素,包含1,不包含4
names[1:4]

#取索引0到3的元素
names[:3] 

# 取索引3到最后1个元素
names[3:]

# 每隔1个元素,取1个元素
names[0::2] 
names[::2]

追加元素

# 在列表结尾追加元素
names.append("Mrli")

执行结果:
['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy', 'Mrli']

插入元素

names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy']

#在索引为2的元素前增加新的元素
names.insert(2,"Mrli")

执行结果:
['Alex', 'Tenglan', ‘Mrli’,'Eric', 'Rain', 'Tom', 'Amy']

修改元素

names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy']

# 替换索引为2的元素
names[2] = 'Mrli'

执行结果:
['Alex', 'Tenglan', ‘Mrli’, 'Rain', 'Tom', 'Amy']

删除元素

# 根据索引删除对应元素
del names[2] 

执行结果:
['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy']
#删除指定元素 names.remove("Eric") 执行结果:
['Alex', 'Tenglan', 'Rain', 'Tom', 'Amy']
# 删除列表的最后一个元素 names.pop() 执行结果:
['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom']

扩展

names2 = ['小李',‘小张’]
names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy']
print names.extend(names2)

执行结果:
['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy''小李',‘小张’]

排序&翻转

names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy''小李',‘小张’]
names.sort()
>>> names ['Alex', 'Amy', 'Eric', 'Rain', 'Tenglan', 'Tom', '小张', '小李'] >>> names.reverse() #反转 >>> names ['小张', '小李', 'Amy', 'Tom', 'Rain', 'Eric', 'Tenglan', 'Alex']

下标获取

names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy''小李',‘小张’]
names.index(
"Amy")

>>> 5

元素统计

count() 方法用于统计某个元素在列表中出现的次数

names = ['Alex', 'Tenglan', 'Eric', 'Rain', 'Tom', 'Amy''小李',‘小张’]
names.count("Alex") >>> 1

4、元组

1、特点:有序集合,不可变对象

2.元组操作:

# 元组定义
names = ("alex","jack","eric")

#获取下标
names.index("jack")
>>> 1

#统计元素出现次数
names.count("jack")
>>> 1

5、字典

1.特点:dict是无序的,key是唯一的

2.字典操作

字典定义

info = {
    'stu1101': "TengLan Wu",
    'stu1102': "LongZe Luola",
    'stu1103': "XiaoZe Maliya",
}

增加字典元素

info["stu1104"] = "xiaozhang"
>>> info
>>> {
    'stu1102': 'LongZe Luola',
    'stu1104': 'xiaozhang',
    'stu1103': 'XiaoZe Maliya',
    'stu1101': 'TengLan Wu'   }

删除字典元素

info = {'stu1102': 'LongZe Luola','stu1104': 'xiaozhang','stu1103': 'XiaoZe Maliya','stu1101': 'TengLan Wu'}
# 删除字典元素
info.pop["stu1101"]
执行结果:
{'stu1102': 'LongZe Luola','stu1104': 'xiaozhang','stu1103': 'XiaoZe Maliinfo}

del info[“stu1102”]
执行结果:
{'stu1104': 'xiaozhang','stu1103': 'XiaoZe Maliinfo}

# 随机删除字典元素
info.popitem()
执行结果:
{'stu1104': 'xiaozhang'}

修改字典元素

info = {'stu1104': 'xiaozhang','stu1103': 'XiaoZe Maliinfo}

info[stu1104] = "小张"

查找字典元素

info = {'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}

"stu1102" in info
>>> True

info.get("stu1102")
>>> 'LongZe Luola'

info["stu1102"]
>>> 'LongZe Luola'

dict循环

#方法1
for key in info:
    print(key,info[key])

#方法2
for k,v in info.items(): #会先把dict转成list,数据里大时莫用
    print(k,v)

6、集合

1.特点:无序的,不重复的数据组合

2.集合操作

集合关系测试

# 创建一个数值集合  
s = set([3,5,9,10])

# 创建一个唯一字符的集合   
t = set("Hello")          

a = t | s         # t和s的并集    
b = t & s         # t和s的交集  
c = t – s         # 求差集(项在t中,但不在s中)  
d = t ^ s         # 对称差集(项在t或s中,但不会同时出现在二者中)  

成员关系测试

x in s
测试 x 是否是 s 的成员

x not in s
测试 x 是否不是 s 的成员

s.issubset(t)
s <= t
测试是否 s 中的每一个元素都在 t 中

s.issuperset(t)
s >= t
测试是否 t 中的每一个元素都在 s 中

其他操作

s.union(t)  
s | t  
返回一个新的 set 包含 s 和 t 中的每一个元素  
  
s.intersection(t)  
s & t  
返回一个新的 set 包含 s 和 t 中的公共元素  
  
s.difference(t)  
s - t  
返回一个新的 set 包含 s 中有但是 t 中没有的元素  
  
s.symmetric_difference(t)  
s ^ t  
返回一个新的 set 包含 s 和 t 中不重复的元素  
  
s.copy()  
返回 set “s”的一个浅复制  

t.add('x')
添加一项
s.update([10,37,42]) 在s中添加多项 t.remove('H') 使用remove()可以删除一项: len(s) set 的长度

 7、动态语言与静态语言

  动态语言:变量本身类型不固定的语言

  静态语言:在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错

int a = 123; // a是整数类型变量
a = "ABC"; // 错误:不能把字符串赋给整型变量

 

posted @ 2018-06-24 17:45  Nice1949  阅读(177)  评论(0编辑  收藏  举报