今天来将前一段时间学习的Python的知识系统地梳理一遍,接下来开始实际的编程实践了。

一、Python实验环境搭建

使用Python编程,首先要有一个开发环境,如同C/C++上又VS2008家族一样,Linux/MacOS上的部署情况这里不再详述,因为Linux上实在太简单,有vim有python就可以了,一般都会自带python;这里重点来讲述下Windows下的Python部署,一部分参考的著名的Python入门教程http://learnpythonthehardway.org/book/。具体如下:

1. 下载安装代码编辑器,可以使用自带的IDLE,这里推荐使用更加易用的nodepad++,支持多种程序与脚本语言,语法高亮显示,自己写了一个Python脚本,大致情况如下:

2. 配置Windows下的Shell,出于Linux的习惯,大多数程序猿都喜欢敲击命令行的快感,Windows下当然我们可以使用CMD,但是其实Win7也提供了强大的新的命令Shell,即PowerShell,其语法与Linux高度类似,与IDLE更重要地是可以直接进入文件目录创建或修改文件。为了可以在PowerShell中使用Python,比如将Python的路径加入到Windows系统的环境变量PATH中,Win7下【计算机】--【属性】--【高级系统设置】--【环境变量】,找到PATH变量,以';'分隔,添加自己的Python安装路径即可:

然后在【开始】菜单中的【运行】框中输入‘PowerShell’,点击运行即可:

Python的开发还可以使用PyScripter,也是一款不错的Python开发的IDE。

二、Python要点回顾

本部分基于今天重新复习的情况有针对性地梳理各个部分的要点,每部分要点都必须熟练掌握,作为自己使用Python开发的“基石”。

1. 数据结构

任何一门语言的本质都是处理数据,因此数据的存储和命名是最根本的。Python的变量采用弱类型规范,即定义时不需要指明数据类型,由Python根据定义初始化自动判断其类型;Python每个语句的结束没有';',采用缩进格式替代了{}表示语句块;Python处理字符串更加灵活,尤其是是print语句可以直接跟字符串的拼接和以','分隔的多个字符串(变量),如print "This is a test...", str(Username)

因此Python无需记得int\float\double等数据类型,所做的工作只是定义一个变量赋值即可。另一个类似于数组的重要结构是序列,我们最为常用的是可变的列表,不可变的是元祖,比如字符串。可变的列表要掌握以下操作:

(1)读取元素:索引(lst[n]),分片(lst[m:n]);

(2)类型转换:list("Python")

(3)插入元素:分片插入(lst[2:2] = list1),lst.append(),lst.extend(),lst.insert(loc, lst)

(4)删除元素:del lst[n],lst.pop(),lst.remove()

(5)查找元素:lst.index(),lst.find(),IN操作

对于元祖字符串来说,当然不能修改其值了,但是也有一些基本的操作,如str.lower()、str.strip(),str.replace(dst, src)等。更重要的是要明白深浅复制的区别,即浅复制:c=a[:]\c=copy.copy(a);深复制:c=copy.deepcopy(a);b=a只是同一个对象的多个引用。

列表与元祖传送门:http://blog.chinaunix.net/uid-26275986-id-4295124.html

深浅复制传送门:http://blog.chinaunix.net/uid-26275986-id-4297339.html

2. 控制结构与函数

Python也具有三种控制结构,顺序结构、条件结构和循环结构,同C/C++相比比较简单,语法也类似,不再赘述。函数的使用格式也要熟知,但是由于Python是弱类型的,因此函数返回值类型不需要指明,函数参数类型也不需要说明。

控制结构传送门:http://blog.chinaunix.net/uid-26275986-id-4299217.html

函数使用传送门:http://blog.chinaunix.net/uid-26275986-id-4300768.html

3. 文件操作

与文件的交互也是每种语言的重中之重,Python中标准库已经提供了文件读写函数,不需要单独引入模块。基本的打开函数有open(),读写函数有read()/readline()/readlines()和write()/writelines(),文件使用完毕应当关闭文件f.close(),文件指针操作f.tell()/f.seek(offset, loc),loc的规范是【0:文件头;1:当前指针位置;2:文件尾】;

文件操作传送门:http://blog.chinaunix.net/uid-26275986-id-4302764.html

4. 各种模块

-1. 网络编程模块socket

import socket

socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)

socket.bind([Host, Port])

socket.listen(5)

socket.accpet() --> Clinet, Client-Address

socket.connect([Host, Port])

send()

read()

close()

SOCKET编程传送门:http://blog.chinaunix.net/uid-26275986-id-4310238.html

-2. import time

time.time()

time.asctime()

-3. random

import random

random.random()

random.uniform(m, n)

-4. re

import re

通配符:'.'

转义符:'\'

字符集:[a-z]

子模式和选择符:p(ython|erl)

子模式的匹配问题

re模块传送门:http://blog.chinaunix.net/uid-26275986-id-4311950.html

-5. urllib

import urllib

urllib.urlopen()

urllib.retrieve(src, dst)

阅读(4442) | 评论(0) | 转发(2) |

learnpythonthehardway下载_Python【十一】:阶段小结相关推荐

  1. 【阶段小结】协同开发——这学期的Git使用小结

    [阶段小结]协同开发--这学期的Git使用小结 一.Git简介 1. Git简单介绍 2. Git工作流程以及各个区域 3. Git文件状态变化 二.Git安装&Git基本配置 三.个人踩坑 ...

  2. 2021高通人工智能应用创新大赛--创新赛道-决赛阶段小结

    20212021高通人工智能应用创新大赛–创新赛道-决赛阶段小结 一.APP开发应用的问题 目前开发的基于高通SNPE技术的安卓APP,功能部分尚且只能实现封装好的图片进行识别,距离拍照和调用相册进行 ...

  3. Java阶段小结_1

    Java学习阶段小结_1 1.了解Java 1:为什么要学习Java 2:Java能干嘛 2.基础 1:标识符与变量 2:数据类型: 3:键盘录入 4:类型转换 5:运算符: 3.程序流程说明 1) ...

  4. 中科院考研经历⑦--阶段小结及专业课复习计划

    一志愿上岸中科院沈计所考研经历: 文章专栏(点击跳转) 阶段小结及专业课复习计划 2022年8月31日星期三15点35分   即将进入九月份日常上课阶段,经过这两天的体验也有所感触:课堂确实会影响学习 ...

  5. python gevent模块 下载_Python协程阻塞IO非阻塞IO同步IO异步IO

    Python-协程-阻塞IO-非阻塞IO-同步IO-异步IO 一.协程 协程又称为微线程 CPU 是无法识别协程的,只能识别是线程,协程是由开发人员自己控制的.协程可以在单线程下实现并发的效果(实际计 ...

  6. learnpythonthehardway下载_只需十四步:从零开始掌握Python机器学习(附资源)

    Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源.你现在也在考虑从 Python 入门机器学习吗?本教程或许能帮你成功上手,从 0 到 1 掌握 Python 机器学习, ...

  7. python从菜鸟到高手电子书下载_PYTHON从菜鸟到高手 清华大学出版社

    推荐序... 1 前言... 3 本书配套资源... 5 第一篇 Python基础知识 第1章 初识Python. 3 1.1 Python简介... 3 1.2 搭建Python开发环境... 8 ...

  8. python paramiko模块下载_Python自动化运维实战:使用Python管理网络设备

    现在,我们已经知道如何在不同的操作系统中使用和安装Python以及如何使用EVE-NG搭建网络拓扑.在本章中,我们将学习如何使用目前常用的网络自动化库自动完成各种网络任务.Python可以在不同的网络 ...

  9. learnpythonthehardway下载_LearnPythonTheHardWay学习笔记1:学习环境搭建

    觉得学习这本书应该有笔记,所以就从这里开始吧. 学习资料: 1.<笨办法学Python>(承德-至阳整理 2013/7/19) 2.<Learn Python The Hard Wa ...

最新文章

  1. C 关于unsigned int compzero = ~0;与unsigned int compzero = 0xFFFF; 的区别!
  2. WebGL Shader 环境搭建
  3. 【正一专栏】春日随感—赢在起跑线上
  4. iOS开发那些事-平铺导航-基于Page的导航及案例实现
  5. hdu3870——平面图最小割
  6. C# 生成缩略图 方法
  7. C语言高级编程:指针变量p指向的地址与p自身的地址
  8. JS 逆向 --- 过无限debugge、hook、js混淆还原、控制流混淆
  9. php mysql 数据库类_PHP操作MySQL数据库的类
  10. 创建CocoaPods的Framework Swift组件化之路(上)
  11. 1137. 第 N 个泰波那契数 动态规划
  12. Markdown笔记简明教程
  13. YouTube视频推荐系统
  14. 【临床研究】---多元回归分析中的变量筛选问题
  15. Jmeter中大佬的大集合
  16. Gini Index vs Information Entropy
  17. Teradata天睿任命王波为大中华区总裁
  18. C语言/Python经典算法冒泡排序
  19. 沧小海深入剖析xilinx的GTP/GTX核,掌握高速串行收发机制——第一章 前言闲谈
  20. 如何做一个基于JAVA二手交易网站系统毕业设计毕设作品(springboot框架)

热门文章

  1. JavaWeb工程师知识图谱
  2. java session 详解
  3. hadooppythonsql_python - hadoop,mapreduce demo
  4. linux 建oracle分区表,Oracle 10g 11g分区表创建举例
  5. html5画电池状态,HTML5的一个显示电池状态的API简介
  6. 定时器和promise_从Promise链理解EventLoop
  7. java running_Running
  8. 华为 虚拟键盘_华为mate30 pro虚拟机械键盘特有体验,虽是虚拟,但却感受逼真...
  9. 雅马哈php mt7,雅马哈专业录音室监听耳机 HPH-MT7 正式发售!
  10. python字符串是否包含某元素_Python实现判断一个字符串是否包含子串的方法总结...