02-python基本数据类型

时间:2021-06-03 19:15:38

python的变量不需要声明, 但变量使用前必须复制, 因为python中所有的内容全部是对象

变量是没有类型的, 有类型的是指向内存对象的类型

a = ''
a = 是合法的

此外, python还可以进行多变量的连续赋值

a  = b = c =
a, b, c = , 'qwe', 'c'

1, Number类型

、Python可以同时为多个变量赋值,如a, b = , 。
、一个变量可以通过赋值指向不同类型的对象。
、数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。
、在混合计算时,Python会把整型转换成为浮点数。

python的math函数

函数          返回值 ( 描述 )
abs(x)   返回数字的绝对值,如abs(-) 返回
ceil(x)  返回数字的上入整数,如math.ceil(4.1) 返回
cmp(x, y) 如果 x < y 返回 -, 如果 x == y 返回 , 如果 x > y 返回
exp(x)   返回e的x次幂(ex),如math.exp() 返回2.
fabs(x)  返回数字的绝对值,如math.fabs(-) 返回10.
floor(x)  返回数字的下舍整数,如math.floor(4.9)返回
log(x)   如math.log(math.e)返回1.,math.log(,)返回2.
log10(x) 返回以10为基数的x的对数,如math.log10()返回 2.0
max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y) x**y 运算后的值。
round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt()返回 +0j

2, str类型

msg = "What's Is Your Name?"

#find, 查找子串位置, 可指定从哪开始查找
index = msg.find('Name', , )
print (index) # rfind, 反向查找
index = msg.rfind('Name', , )
print(index) # 与list之间的转换
msg_list = msg.split(' ')
join_msg = ' '.join(msg_list)
print (msg_list)
print(join_msg) # 使用[:]进行截取
print(msg[: ])

另外:  字符串的运算有:

+ 字符串连接
>>>a + b 'HelloPython'
* 重复输出字符串
>>>a * 2 'HelloHello'
[] 通过索引获取字符串中字符
>>>a[1] 'e'
[ : ] 截取字符串中的一部分
>>>a[1:4] 'ell'
in 成员运算符 - 如果字符串中包含给定的字符返回 True
>>>"H" in a True
not in 成员运算符 - 如果字符串中不包含给定的字符返回 True
>>>"M" not in a True
r/R 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法。
>>>print r'\n' \n >>> print R'\n' \n

格式化输出; 

类c: %s, %d, %c, %f
format: '{0}, {1}'.format(str0, str1)

3, list类型   [value, value2, value3]

# list 的常用操作
# 列表有序 msg_list = [, , , , , , , , , , , ]
msg_list.append()
msg_list.reverse()
msg_list.remove()
msg_list.index()
msg_list.insert(, 'a') # 插入 list2 = ['a', 'b']
msg_list.extend(list2) # 列表相加 # 切片
new_list = msg_list[:] # 包左不包右
msg_list[-: ] # 从倒数第五位开始切 print (msg_list)
print (new_list) print (msg_list)
# 求2 出现的位置
first_position =
for i in range(msg_list.count()) :
new_position = msg_list.index() +
msg_list = msg_list[first_position:]
first_position += new_position
print first_position # 或者使用index
# for i in range(msg_list.count()):
# if first_position == :
# first_position = msg_list.index()
# else:
# first_position = msg_list.index(, first_position + )
# print first_position

list中 [::] 的使用

list = range(, )
print(list[::]) # 从第一个开始, 隔2个取一个
print(list[::]) # 从index= 开始取, 到最后
print(list[::-]) # 跟reverse一样, 倒叙
print(list[::-]) # 倒序, 隔2个取一个

4, 元组

元组和list的区别是, 元组的数据不可变, 需要写在() 里面的, 用都好隔开

其他方法和list同

5, sets

sets 是无序不重复的序列, 功能是进行成员关系的测试和删除重复元素

创建空集合需要用set(), 因为{} 是用来创建空的dict

主要用来进行集合运算

#!/usr/bin/python3

student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}

print(student)   # 输出集合,重复的元素被自动去掉

# 成员测试
if('Rose' in student) :
print('Rose 在集合中')
else :
print('Rose 不在集合中') # set可以进行集合运算
a = set('abracadabra')
b = set('alacazam') print(a) print(a - b) # a和b的差集 print(a | b) # a和b的并集 print(a & b) # a和b的交集 print(a ^ b) # a和b中不同时存在的元素

6, dict

字典是类型java map的一种集合, 存放的key-value的形式的值

dict = {'Alice': '', 'Beth': '', 'Cecil': ''}

# 访问字典中的值, 没有则报错
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age']; # 修改字典
dict['Age'] = ; # update existing entry
dict['School'] = "DPS School"; # Add new entry # 删除字典
del dict['Name']; # 删除键是'Name'的条目
dict.clear(); # 清空词典所有条目
del dict ; # 删除词典

字典的值可以是任意python对象,键不可改变且不可重复, 所以键只能是数字, 字符串或者元组类型