由于以前处理数据用Matlab和C,最近要处理大量文本文件,用C写实在是太繁琐,鉴于Python的强大文本处理能力,以及其在Deep Learning上有着很大优势,本人打算从即日起学习Python,谨以此系列博客记录学习点滴。文中如有错误,还望大牛们指出!

Section 1:

本文是第一篇,当然也是基础,有了编程基础的我们都知道,学习一门语言什么最重要?当然先搞清楚数据类型和数据结构,有了这些,你才能去谈面向对象,才能去设计程序。

Python的数据类型比较简单:1.整数;2.长整数;3.浮点数;4.复数;5.字符串

注1:熟悉Matlab的筒靴们要注意,Python的虚数用j而不是i表示。

注2:Python 不接受只声明不定义的格式,例如:想声明一个变量,必需要附一个初始值。

注3:Python里没有char类型,但是有字符串就已经足够处理所有工作了。

对于运算符的优先级我想这个跟其他语言出入并不大,所以不再赘述。

Section 2:

下面对于新手最重要的:

缩进

对,Python对于缩进非常敏感,为什么呢?因为Python没有C语言那种具有语句块的分割符,例如{},也没有Matlab的for...end这种结束符,它只能以缩进判断一个语句块是否结束。

这对于定义函数,或者循环语句,判断语句都很重要。例如:

for i in range(1,5)

print i

这两句是要报错的,因为print i作为for循环内部的语句 没有缩进!

正确的写法是:

for i in rang(1,5)

print i

缩进一个空格或者一个Tab,这个区别在哪里我还没有发现,希望各位能够给我一点指教。

Section 3: Python 的数据结构

Python的数据结构包括:列表,元组,字典,序列

其中序列包括列表、元组和字符串

3.1列表

列表中元素的有序存储的,shopList=['banana','apple','orange'],可以对它进行排序shopList.sort(),那么其内容就变为shopList=['apple','banana','orange']。

3.2元组

元组是不可变的,即定义好了的元组不能更改其内容。元组的定义:array=('this','is','an','array')

3.3字典

字典是键和值对应存储的,可以添加和删除元素。dic={'key1':'first','key2':'second','key3':'third'}

添加元素:dic['key4']= 'fourth'

删除元素:del dic['key4']

需要注意的是字典以键值为主,抓住这一点。

3.4序列

序列提供两种操作符:索引和切片

其实这一点和matlab最为相似,Matlab中提取一个数组的下标从a:b的元素;arr=arr[a:b];

索引就更简单了。

注4:注意这些数据结构定义的符号,以免混淆。

Reference:简明Python教程 http://sebug.net/paper/python/

【新手学Python】一、基础篇的更多相关文章

  1. 小白学Docker之基础篇

    系列文章: 小白学Docker之基础篇 小白学Docker之Compose 小白学Docker之Swarm PS: 以下是个人作为新手小白学习docker的笔记总结 1. docker是什么 百科上的 ...

  2. python+selenium基础篇,切入切出frame

    1.首先制作一个html的文件,代码如下 <!DOCTYPE html> <html> <head> <title>Frame_test</tit ...

  3. 一起学Spring之基础篇

    本文主要讲解Spring的基础环境搭建以及演变由来,仅供学习分享使用,如有不足之处,还请指正. 什么是Spring ? Spring是一个开源框架,用来处理业务逻辑层和其他层之间的耦合问题.因此Spr ...

  4. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

  5. Python ( 学习 基础篇第一部 )

    目录 注释 注释的分类 注释的注意点 变量 变量的概念 变量的声明 变量的命名 变量的交换 变量的缓存机制 常量 进制 进制的转换 原码 反码 补码 六大数据类型 Number 的四大类 字符串 st ...

  6. [python面向对象]--基础篇

    1.#类 #类就是一个模板,模板里可以包含多个函数,函数里实现一些功能 #定义一个类 class bar: def foo(self,agr): print(self,agr) obj = bar() ...

  7. Python学习——基础篇

    1.python的安装     python下载地址:https://www.python.org/downloads/     安装完成后,运行cmd.exe,输入python     如果出现“p ...

  8. python正则表达式基础篇

    1.正则表达式基础 1.1简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大 ...

  9. 新手学python(1):解析XML与系统调用

    最近需要做一个项目,完成一批音乐的格式转换.由于之前并未学习过python,所以想借此机会学一下.在介绍自己的学习过程之前,先把项目简要描述一下.目前在一台服务器a上有几十万首原始的MP3音乐文件,现 ...

随机推荐

  1. MySQL 5.5开启慢查询功能

    vim /etc/my.cnf [mysqld] slow-query-log = on # 开启慢查询功能 slow_query_log_file = /usr/local/mysql/data/s ...

  2. 主流浏览器css兼容问题的总结

    最近又搞了一波网站的兼容,由于要求ie浏览器还是要兼容到ie8,所以调起来还是各种蛋疼. 现在就post一些做兼容的总结,可能不够全面,但是可以告诉大家如何避过一些坑.主要测试了chrome,fire ...

  3. c# 通过反射调用类的构造函数

    var constructors=typeof(Demo).GetConstructors(); var paramsInfos=constructors[i].GetParameters();//I ...

  4. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  5. jquery----中级函数

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. redis 快速入门(win7)

    0:介绍 百度百科or官网 1:下载  选择32位或者64 地址:https://github.com/dmajkic/redis/downloads 1.1下载后如图 1.2文件介绍 redis-s ...

  7. [Linux]系统调用理解(4)

    这是本专栏中进程相关的系统调用的最后一篇,用2个实例演示了以往学习的内容.其一是Mini Shell,仿常用的Bash而做,但对其作了大大简化:其二是一个Daemon程序,可以使读者一窥服务器编程的端 ...

  8. 总是有一个程序的bug没找到

     算法训练 Lift and Throw   时间限制:3.0s   内存限制:256.0MB      问题描述 给定一条标有整点(1, 2, 3, ...)的射线. 定义两个点之间的距离为其下标之 ...

  9. Git学习总结

    master主分支合并dev分支,代码 :git merge dev ,跳出如下界面.输入:wq,(:wq命令是LINUX命令,强制写入文件并结束),可以强制合并.但为什么会跳出该界面,我也没搞清楚. ...

  10. Android笔记:异步消息处理

    1. Message Message 是在线程之间传递的消息,它可以在内部携带少量的信息,用于在不同线程之间交换数据.上一小节中我们使用到了Message 的what 字段,除此之外还可以使用arg1 ...