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对象,键不可改变且不可重复, 所以键只能是数字, 字符串或者元组类型