由于本人已经java开发,所以这是一个快速学习python的系列文章,只会突显一些java与python不同的地方
---------------------
Python允许你同时为多个变量赋值。例如:
a = b = c = 1
a, b, c = 1, 2, "john"
标准数据类型
Python3 中有六个标准的数据类型:
Number(数字)String(字符串)List(列表)Tuple(元组)Set(集合)Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
1.Numbers(数字)
int long float . 这三个与java类似
complex 复数,就是数学的复数complex(a,b) 或者a + bj a是虚部,b是实部
2.String(字符串)
a ="12321" a[2]='1' print(a)
这种代码就会报错
python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。实例如下
para_str = """这是一个多行字符串的实例多行字符串可以使用制表符TAB ( \t )。也可以使用换行符 [ \n ]。"""print (para_str)输出的结果是:这是一个多行字符串的实例多行字符串可以使用制表符TAB ( \t )。也可以使用换行符 [ \n ]。
str自带函数,这里之列举java中没有的
maketrans()
intab = "aeiou"outtab = "12345"trantab = str.maketrans(intab, outtab)str = "this is string example....wow!!!"print (str.translate(trantab))结果是把str中的aeiou替换成12345,注意intab和outtab要一样长
3.List (列表) java中的List
[1,3,3]
列表可以当栈用,也可以当队列用,列表中有一个比较牛B的方法,叫做推导式
vector= [1,2,3,4]vector2 =[(4*x,3*x) for x in range(len(vector))]等价于下面list =[]for x in vector:list.append((4*x,3*x))print(list)vec =[1,2,3,4,5]vec2=[3*x for x in vec if x > 3]等价于list=[]for x in vec:if x>3:list.append(3*x)
4.tuple元组 java中的flink中的Tuple
(1,2,3,)
元组的内置函数只有count 长度和index 类似java中的String的index
5.set集合就是java中的Set
{1,2,3}
空集合不能用{}表示,要用set()
s.update( x )也可以更新,比add功能更强
s.discard( x )可以用来删除元素,代替s.remove( x )
6.字典 java中的Map
dict= {"1":"2","2":"3"}
put/update 操作 dict['123'] =123
delete操作 del dict['Name']
字典的遍历:
//返回key和索引knights = {'gallahad': 'the pure', 'robin': 'the brave'}for k,v in enumerate(knights):print(k,v)//返回kv键值对knights = {'gallahad': 'the pure', 'robin': 'the brave'}for k,v in knights.items():print(k,v)//组合两个列表names = ['zhangsan','wangwu', 'zhaoliu']ages = [12, 23, 54]list=[]for q,a in zip(names,ages):list.append({'name':q,'age':a})print(list)
----------------------------------
isinstance 和 type 用于判断类型
type()不会认为子类是一种父类类型。isinstance()会认为子类是一种父类类型。
class A:passclass B(A):passprint(isinstance(B(),A))------trueprint(type(B())==A)------false
------------------------
运算符
1.Python逻辑运算符||运算符 ||逻辑表达式||java中含义||||and ||x and y || &&|||| or ||x or y || |||||| not ||not x || !||2.Python成员运算符||运算符 ||逻辑表达式||||in ||是否在集合中||not in|| 不在集合中||3.Python身份运算符||运算符 ||含义 ||java中含义||||is ||is 是判断两个标识符是不是引用自一个对象|| ==||||not is||s not 是判断两个标识符是不是引用自不同对象 || !==||is 和= 区别相当于java中 == 和equals区别
-----------------------------------