一闪一闪亮晶晶,满天都是小星星,挂在天上放光明,好像许多小眼睛。不要问我为什么喜欢这首歌,我不会告诉你是因为有人用口琴吹给我听。

一、Python学习文档与资料

  一般来说文档的资料总是最权威,最全面的,可是很少有人能认真的从头到尾把文档或者帮助手册看一遍,毕竟太枯燥了,就像java api 文档一样,正确的用法当然是把它当做一个工具书,想到用什么,就去查,当然最好还是能大概看一遍,这样心中有个印象找东西也方便。

  最权威的当然是官方文档,地址在:https://docs.python.org/3/。推荐阅读英文的,但是如果真的想看中文的也是有地方的:http://python.usyiyi.cn/translate/python_352/index.html。如果想看书,那就推荐一本我觉得比较适合的书:《Python编程快速上手》,这本书真的很不错。

  当然按照我博客的顺序阅读也是可以的,这也算是我学习过程。

二、Python基础知识

  虽然学习东西应该一步一步来,但是很多知识到深了都会相互关联的,所以先从表象简单介绍下所有的知识点,然后依次深入,本篇只是概括。

2.1 全局函数(内置函数)

  我喜欢叫它全局函数,因为可以在任何地方调用,从这个角度来看,Python和JavaScript还是有些相似的,都有一些全局的函数。Python也有很多直接使用方法,例如可以直接写print(1)来在控制台打印一个1。

2.2 基本数据类型

  Python不像Java是强类型语言那样要在使用的时候就要确定变量类型,这点依然和js比较相似,Python数据类型分为,整型、浮点型、字符串、布尔型、对象。

2.2.1 整型

  Python的整型和Java一样也有一样的运算。

1232,0,-10,0x22

  像上面那样的都是整数,十六进制也是以0x开头。

2.2.2 浮点型

  浮点型和js语言相似。

3.17,-12.9,2.3e10,6.2e-8

  浮点型都是带小数的也支持科学计数法。

2.2.3 字符串

  字符串也和js相似,可以用单引号或者双引号或者三引号(三个单引号或三个多引号)引起来。当然字符串本质上也是字符的不可变数组。

'hello',"yiwangzhibujian"

  看个人习惯,单双引号都可以使用。

2.2.4 布尔型

  Python的布尔型写法比较特殊,为True和False,首字母分别要大写,这一点感觉很奇怪,然后布尔型的与或非运算符则为,and、or、not

2.2.5 None值

  这是一个不代表任何值的值

2.3 变量

  不需要提前定义,也不需要指定类型。就是这么方便。当然变量名也是有要求的:

  • 只能是一个词
  • 只能包含字母数字和下划线
  • 不能以数字开头
name='yiwangzhibujian'
print('hello',name)
========控制台输出========
hello yiwangzhibujian

  不用定义比js用起来还爽。

2.3 类和对象

  Python中也是有类和对象的,熟悉Java的都了解,学习Java的大部分时间都是在学习类的使用方法。

2.3.1 list

  列表就是java中的List,但是表示形式有点不一样,用中括号引起来的一系列元素:

[1,2,3,4,5]
['yiwangzhibujian','laizhezhikezhui',35]

  基本方法也都和Java相似,后续会详细讲解。

2.3.2 tuple

  不可变的list,使用一对小括号:

('hello','yiwangzhibujian')

  操作和list一样,除了不能对其进行修改。

2.3.3 range

  range是一个特殊的对象,简单来说就是一个数字序列,一般用来遍历,例如range(0,10)即代表0,1,2,3,4,5,6,7,8,9的序列,使用起来很方便。

2.3.4 set

  不可重复的集合和Java的Set一个性质。除了使用构造方法以外,也可以使用大括号来表现:

{'hello','yiwangzhibujian'}

  还有一种不可变的set叫做frozenset,就像list和tuple的关系一样,不再单独介绍。

2.3.5 dict

  字典表就是Java中的Map,是键值对的集合,表现形式和json很像,都是大括号括起来的键值对:

{'name':'yiwangzhibujian','num':'','sex':'no'}

  使用方法依然和Map相似,后续会进行详细介绍。

2.3.6 其他对象

  像IO、时间等对象会在后续进行学习,亦可以自己参考文档学习里面的基本用法。

2.4 控制流

  说到控制流就要了解Python的一大特点,Python的作用域不是以两个大括号引起来,而是使用统一的缩进来表示,在要缩进的地方加上冒号表示一下,虽然觉得不适应,但是习惯就好。例如:

if True:
print('true')
else:
print('false')

  基本用法和Java一样,注意格式即可。

2.4.1 分支

  分支是最常见的控制流,通过boolean型的表达式来判断程序的走向。

2.4.2 循环

  熟悉while和for即可,同样支持continue和break,while和for的示例

2.5 函数或方法

  使用def来定义,就像js使用function来定义一样,基本示例如下:

def my_add(x,y):
return x+y

  这个是很重要的知识点,后面也会进行详解。

2.6 作用域

  作用域简单的分为全局作用域和局部作用域,基本使用规则和Java一样。

2.7 异常处理

  Python也是有异常处理的,使用try和exception来实现。一个下面给出一个简单的示例,如果不进行异常捕获,异常会被抛出程序会停止运行:

print(1/0)
print(1/1)
=======控制台输出=======
Traceback (most recent call last):
File "D:\workspace\eclipse_neon\python-hello\src\test.py", line 7, in <module>
1/0
ZeroDivisionError: division by zero

  如果进行捕获:

try:
print(1/0)
except ZeroDivisionError:
print('除数不能为0')
print(1/1)
=========控制台输出=========
除数不能为0
1.0

  使用的方法和Java一样,该捕获的就捕获,不该捕获的就抛出。

2.8 注释和缩进

  所有以#开头的都会被当做注释,多行注释可以利用三引号来实现:

#这是一个注释
"""
这是多行注释
这是多行注释
"""

  写程序多用注释,不然一段时间后会忘记当初写这个是干嘛用的。

2.9 模块

  为了方便组织不同功能的代码,都是用模块来组织,引用的地方也使用import来引入,例如:

import sys

  简单介绍了下,基础知识只是为了了解这个语言的大概情况,以后会有详细说明的。

【Python】Java程序员学习Python(三)— 基础入门的更多相关文章

  1. 【Python】Java程序员学习Python(五)— 函数的定义和使用

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  2. 【Python】Java程序员学习Python(二)— 开发环境搭建

    巧妇难为无米之炊,我最爱的还是鸡蛋羹,因为我和鸡蛋羹有段不能说的秘密. 不管学啥,都要有环境,对于程序员来说搭建个开发环境应该不是什么难题.按顺序一步步来就可以,我也只是记录我的安装过程,你也可以滴. ...

  3. 【Python】Java程序员学习Python(六)— 流程控制、异常处理

    和Java语言一样,Python也有基本的流程控制,简单了解下即可. 一.流程控制的元素 条件 条件就是布尔值或者布尔值的表达式,要么是True要么是False. 代码块 在Python中,代码块不是 ...

  4. 【Python】Java程序员学习Python(七)— 文本类详解(字符串、str)

    如果一个女孩子喜欢看龙猫,那么请珍惜她,呵护她 任何一门语言,字符串总是最基本也是最需要掌握的一个变量,想想入门的Hello World,输出的就是字符串. 官方文档:https://docs.pyt ...

  5. 【Python】Java程序员学习Python(一)— 为什么学习Python

    现在是6月份,毕业快3年了,虽然不能说对Java掌握的程度达到了如火纯青的地步,但是依然感觉到了瓶颈期,Java用的多了,也到了随心所欲的地步了,所以学第二门语言的想法一直在我脑海里闪现,有想法了就要 ...

  6. 【Python】Java程序员学习Python(十)— 类、包和模块

    我觉得学习到现在应该得掌握Python的OOP编程了,但是现在还没有应用到,先留一个坑. 一.类和对象 说到类和对象其实就是在说面向对象编程,学完Java以后我觉得面向对象编程还是很不错的,首先封装了 ...

  7. 【Python】Java程序员学习Python(四)— 内置方法和内置变量

    <假如爱有天意> 当天边那颗星出现,你可知我又开始想念,有多少爱恋只能遥遥相望,就像月光洒向海面,年少的我们曾以为,相爱的人就能到永远,当我们相信情到深处在一起,听不见风中的叹息,谁知道爱 ...

  8. 【Python】Java程序员学习Python(十一)— IO

    一.前言 io的内容其实还是有很多的,现在我也只是了解初步用法,当然详细内容还是应该参照官方api的: 官方api:https://docs.python.org/3/library/os.html. ...

  9. 【Python】Java程序员学习Python(九)— 集合(list、tuple、range)和映射(dict)

    集合是一门语言最重要的一个特性,对集合支持的程度越好,使用起来越方便 一.表现形式 1.1 list list的基本用法: 使用中括号包裹,[1,2,3] 元素类型可以是任意类型,同样可以是list ...

随机推荐

  1. Anaconda 入门详解

    Anaconda Anaconda简介 Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学.机器学习.大数据处理和预测分析),Anaconda致力于简化包管理和部署 ...

  2. C# 通过IEnumberable接口和IEnumerator接口实现泛型和非泛型自定义集合类型foreach功能

    IEnumerator和IEnumerable的作用 其实IEnumerator和IEnumerable的作用很简单,就是让除数组和集合之外的类型也能支持foreach循环,至于foreach循环,如 ...

  3. tensorflow基础篇-2

    #-*- coding:utf-8 -*- import tensorflow as tf sess=tf.Session() #整流水线单元relu print sess.run(tf.nn.rel ...

  4. 【链表】 Reverse Linked List II

    题目: Reverse a linked list from position m to n. Do it in-place and in one-pass. For example:Given 1- ...

  5. android瓦片地图技术研究

    最近根据公司项目需求,需要制作场馆的室内图并且实现根据rfid信号的自动定位功能,研究了好久找到了一个目前为止还算好用的瓦片地图工具——TileView. github连接:https://githu ...

  6. 带你了解数据库中事务的ACID特性

    前言 前面我们介绍过数据库中 带你了解数据库中JOIN的用法 与 带你了解数据库中group by的用法的相关用法.本章节主要来介绍下数据库中一个非常重要的知识点事务,也是我们项目中或面试中经常会遇到 ...

  7. 使用Apache Bench对网站性能进行测试

    使用Apache Bench对网站性能进行测试

  8. java学习-java.lang一Number类

    java.lang包是java语言中被用于编程的基本包.编写的程序基本上都要用到这个包内的常用类. 包含了基本数据类型包装类(Boolean,Number,Character,Void)以及常用类型类 ...

  9. 在 Ubuntu下安装 labelImg (标数据用)

    安装 SIP 下载 SIP 并解压 : $ sudo python configure.py $ make $ sudo make install 安装 依赖库 $  sudo apt-get ins ...

  10. google glog 使用方法

    #include <glog/logging.h> int main(int argc,char* argv[]) { google::ParseCommandLineFlags(& ...