Java工程师学快速Python(1)----- 数据类型和运算符
由于本人已经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:pass class B(A):pass print(isinstance(B(),A)) ------true print(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区别
-----------------------------------
Java工程师学快速Python(1)----- 数据类型和运算符相关推荐
- Java工程师学快速Python(4)----- I/O与异常处理
读和写文件 open()将会返回一个file对象,基本语法如下: open(file, mode='r', buffering=-1, encoding=None, errors=None, newl ...
- Java历程-初学篇 Day02变量,数据类型和运算符
一,数据类型 1,基础数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔类型 boolean 2,引用类型 String 字符串型 二,变 ...
- java基础学习 --- 第二节 变量、数据类型和运算符
java基础学习 - 第二节 变量.数据类型和运算符 一.变量 1.变量就是会发生改变的数据,程序运行时,这些数据以变量的形式被保存到计算机的内存中.如图 2.使用变量的步骤: 声明变量 - ...
- 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,complex,None,str, 转义字符
一木.溪桥 在Logic Education跟Amy学Python 12期:Python基础课 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,compl ...
- JAVA学习脚印2: 数据类型和运算符
JAVA学习脚印2: 数据类型和运算符 本节将记录java中的数据类型和运算符. 1. java中的数据类型 java中变量的数据类型有两种:基本类型(primitive)和引用(reference) ...
- 《Java疯狂讲义》第3章(数据类型和运算符):博主李俊德的阅读笔记与知识拓展
一.问题背景 博主在准备应聘的笔试.面试时,再次采用了多年以来的Java工具书<Java疯狂讲义>,并决定在每章详细复习后都要在博客中写下详细的阅读笔记. 二.阅读笔记与知识拓展--< ...
- java异或运算结果数据类型_java中的数据类型和运算符的总结归类。
首先学习java肯定先要了解java的发展史,以及java的特点,常见的dos命令,jdk的安装,如何开发java程序等等一下概念行的东西,这里面我都不一一说了. 今天这一章主要想总结一下java中的 ...
- double类型怎么取余_数据类型和运算符
数据类型和运算符 1.进制 1.1文件存储单位 任何数据在计算机中都是以二进制的形式存在的,二进制早期由电信号开关演变而来 . 一个电信号或者一个二进制位统称为Bit位,8个Bit位为一组组成 ...
- 操作数数据类型 char 对于 sum 运算符无效。_数据类型和运算符
数据类型和运算符 1.进制 1.1文件存储单位 任何数据在计算机中都是以二进制的形式存在的,二进制早期由电信号开关演变而来 . 一个电信号或者一个二进制位统称为Bit位,8个Bit位为一组组成 ...
最新文章
- Python使用matplotlib函数subplot可视化多个不同颜色的折线图、使用set_major_locator函数指定坐标轴主刻度数值倍数(MultipleLocator)
- 那些数学不好的程序员?最后都如何了(文末送书)
- C++设计模式之策略模式(Strategy)
- 推荐收藏 | SLAM优秀开源工程汇总
- 迭代器 生成器 面向过程编程
- RocketMQ(七)——消息的消费
- 宣称“禁用新疆产品”,英特尔紧急道歉:出于表述合规合法初衷
- 思科模拟器配置路由表详细教程
- 谷歌浏览器上传下载奔溃问题解决方法
- 股票预测pythonlstm_LSTM预测股票涨跌--结合技术分析视角(一)
- 计算机单招基础知识试题,高职单招《计算机类专业基础知识》正式试卷
- 从0到1做好KOL运营实操
- 板载SoC与插槽CPU
- 贪心高性能神经网络与AI芯片应用
- send_nsca passive monitor setup notes
- python十六进制转换成八进制_怎么把十六进制转化为八进制
- NRF52840的学习之路(三)
- Android自定义ViewPager图片指示器,兼容实现底部横线指示器
- 数据库自增id没有从0开始
- 简易音乐播放器(js,html,css实现)
热门文章
- python xgboost输出变量重要性_xgboost输出特征重要性排名和权重值
- ubuntu右上角不显示ibus(即输入法图标)的解决办法
- 如何实现外网访问ftp
- android电视 防沉迷,【陈博士讲育儿】孩子看电视停不下来?三招教你防沉迷
- 12306退票后多久能重新买同一车次
- Android基础之BroadCastReceiver短信拦截器
- JavaScript运行错误求助
- (4) 春晚《千手观音》演员生活照
- 以为是高性能神仙算法,一看源代码才发现...
- 基于ARM Cortex-M3微控制器(STM32系列)基础知识(二)——ARM内核体系结构