Python学习之路—Day1
第1章 Python语言简介
1.1 Python是什么
Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn)是什么呢?简单的说,它是一种计算机编程语言及一组配套的软件工具和库。是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年[1]。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议 。
Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
1.2 Python应用
Python作为一种功能强大且通用的编程语言而广受好评,它具有非常清晰的语法特点,适用于多种操作系统,目前在国际上非常流行,正在得到越来越多的应用。
Web程序:Django、Pyramid、bottle、tornado、Flask、web2py
GUI应用:wxPython、tklnter、PyGtk、PyGobject、PyQt
科学运算:SciPy、Pandas、IPthon
软件发展:Buildbot、Trac、Roundup
系统管理:Ansible、Salt、OpenStack
第2章 Python安装
2.1 Windows环境安装
(1)在官网https://www.python.org/downloads/ 下载你所需要的版本
(2)根据你的操作系统,单机安装相应的安装程序链接(我这选择X86-64的)

(3)下载完成后,双击以运行它
(4)安装完成后为搭建环境变量,把Python的安装目录添加到PATH系统变量中即可
我的电脑-->属性-->

(5)测试Python是否安装成功,如图所示显示安装成功

(6)测试我们的第一条程序

2.2 Linux环境安装
(1)在官网下载Python-2.7.11.tgz
(2)编译安装
tar zxf Python-2.7.11.tgz 解压下载的文件 cd Python-2.7.11/ 进入解压的文件中 ./configure –prefix=/usr/local/python 是软件的组态设置文件,产生对应平台的Makefile make 根据Makefile的内容,编译出符合平台的可执行文件 make install 编译安装成功的软件,这一步根据需要可以选择是否需要root权限。默认的安装都是在安装在/usr/local/目录下,这样是需要管理员权限的 make clean 清除编译成功的obj and binary
(3)编译安装完成后,将系统自带的低版本的Python替换掉,但CentOs的yum依赖Python,为了yum正常运行,将自带的Python备份,如下:
mv /usr/bin/python /usr/bin/python-2.6.6 将自带Python备份 ln -s /usr/local/python/bin/python /usr/bin/python 将现有Python做个软链接 /usr/bin/python-2.6.6 查看自带版本 python 查看现有安装版本
(4)yum依赖原有Python版本,将yum指向原来的Python
vim /usr/bin/yum
将第一行中的“#!/usr/bin/python”修改为“#!/usr/bin/python-2.6.6”
第3章 变量及数据类型
3.1 变量,赋值的含义
变量:是计算机语言中能储存计算结果的抽象概念,变量通常是可变的,变量可以通过变量名访问,而且还占用一定的存储空间。
赋值:将某一数值赋给某个变量的过程,一般用“=”表示。
name = “Ajen Liu” 字符串赋值需要“”
age = 24 数字直接赋值,但是如果想要数字变成字符串需要“24”
3.2 变量的命名规范
1.系统中的自带名称不能作为变量名称,比如input
2.num_of_ajen_liu = 20 一般使用
3.NumOfAjenLiu = 20 这个也可以使用,看个人爱好,我觉得还是自己先决定一种格式,不然以后变来变去的,很是麻烦
4.数字不能开头命名(7dd 是错误的)
5.!name 特殊符号不能命令
6.num of ajen liu 这种也是错误的,变量命名不能有空格
3.3 条件判断与缩进
说到判断就让人很容易想到 if …else…,但是在Python中却相差很大
luck_number = 2
guess_number = input(“Enter you number:”)
if guess_number == luck_number:
print(“恭喜你,猜对了!”) #在此处前面空格,不是为了好看,而是为了强制缩进
elif guess_number > luck_number:
print(“对不起,猜大了!”)
else:
print(“对不起,猜小了”)
如果你的程序中会出现IndentationError,则你的代码中出现缩进错误
3.4循环控制及次数限制(计数器)
luck_number=1
guess_number = int(input("输入:"))
while True: #用while True能够实现无限循环,
if guess_number != luck_number:
print("aaa")
else:
print("qqq") for i in range(3): #能够限制次数 print(“LOOP”,i)
计数器
luck_number=1
guess_number = int(input("输入:"))
guess_count = 0 #在此处设定一个计数器
while True: #用while True能够实现无限循环,
if guess_number != luck_number:
guess_count += 1
if guess_count>2: #满足条件跳出循环
break
print("aaa")
else:
print("qqq")
3.5 常用数据类型
数字: int(整数型) Float(浮点型) Long(长整型) type(0.5)可以查看类型
字符串:字符串格式化 name = ‘liuqiang’ print(“Name:%s” %name)
常用功能:name=raw_input(“name:”).strip() 去掉空白 strip(‘A’)去掉括号内的字符串
3.6 列表
name_list = [‘ajen’,’one’,’enlish’,’it’,’money’]
追加:name_list.append(‘yum’) 在列表中最后一位追加一个字符串
name_list = [‘ajen’,’one’,’enlish’,’it’,’money’,’yum’]
索引:name_list.idex(‘one’) 输出是1 以0为起始
name_list[0] 输出是ajen
统计:name_list.count(‘ajen’) 输出是1,统计ajen的个数
插入:name_list.insert(2,’liu’) 此处2,个人理解是索引数2或者第二个位置后面
name_list = [‘ajen’,’one’,’liu’,’enlish’,’it’,’money’,’yum’]
删除:name_list.pop() 删除最后一个
删除多个重复的:for i range(name_list.count(‘liu’))
name_list.remove(‘liu’)
切片:name_list[0:2]
Name_list[0:5:2] 隔着切
3.7 简单的嵌套循环
for j in range(5):
for i in range(10):
if i < 5:
print("输出:",i)
continue #跳出本次循环,满足上面的判断条件,则执行continue上面的语句,不满足条件,跳出循环,执行continue下面的语句
print("打印:",i)
if j > 3:
print("计数:",j)
break #跳出这一层的循环
3.8 文件操作
(1)选择文件路径和模式:
file_obj
= open(“文件路径”,”打开文件模式”)
打开文件模式:r 只读方式打开文件
w 打开一个文件用于写入
a 打开一个文件用于追加
w+ 打开一个文件用于写读
注意:w 和 w+ 都是先将文件内容清空,再进行写入操作,执行此操作要备份并慎重
(2)执行文件:读或写
读取文件的内容:
file_obj.read() 一次性加载所有内容到内存
file_obj.readlines() 一次性加载所有内容到内存,并根据行分割成字符串
for
line in file_obj: 每次只读取一行内容
print
line
(3)关闭文件
file_obj.close()
参考【1】http://baike.baidu.com/link?url=cNVmMed2W56sNvyRGWiNMi6KtxthVKIRstkQyaMVz9JMWunyUKe-g2bcOho8wjk6PJbnfi-rW1P1GrizZTEFla
Python学习之路—Day1的更多相关文章
- ql的python学习之路-day1
写在前面的话:万事开头难,算是系统学习python的一个月了吧,总该写点什么来记录一下,之前看老男孩day1的视频没有开通博客,这次给补上,对于学python还是要好好努力,不能半途而废,还是那句老话 ...
- python学习之路day1
学习总结: 变量,字符的由来,python2和python3的区别,控制语句:if,for,while,break,continue用法 学习示例: if用法1:判断年龄 # -*- coding: ...
- python学习之路-day1
1 变量 赋值:变量可以是字符串.序列.元组. # author:hams.ali # 界面 line = '-*'*20 # 数字直接可以计算 _var1 = ' # 字符变量拼接 _var_2 = ...
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
随机推荐
- Redis在windows下安装和PHP中使用
1.redis简介redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...
- lucene写索引出现锁文件的原因之一
lucene正常情况目录下的文件 有三个文件. segments.gen segments_a08, 还有一个类似 _uw.cfs名字的东西. 当然,不一定都一样, 但肯定是这三个. 如果出现了很多文 ...
- 安卓开发 想要获取某个View的高度(我是在做滚动浮层的时候用到的)
1.activity中有个onWindowFocusChanged()方法,可以获取控件的大小,别的地方可能会调用过早导致获取不到实际的大小 @Override public void onWindo ...
- Thailand vs Soros
| exchange rate | | Thailand | Soros | |---------------+---------+----------+---------| | | orgin | ...
- JS编写全选,复选按钮
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- java.lang.OutOfMemoryError: Java heap space的解决方法
windows->preferences->Java->Installed JRES->edit->Default VM Arguments添加-Xms256m -Xmx ...
- apache结合svn创建svn资源库
1.在登录过程中可以查看error日志,如果发生以下提示: (13)Permission denied: Could not open password file 2.运行:chcon -R -h - ...
- Getting Started With Hazelcast 读书笔记(第七章)
第七章 部署策略 Hazelcast具有适应性,能根据不同的架构和应用进行特定的部署配置,每个应用可以根据具体情况选择最优的配置: 数据与应用紧密结合的模式(重点,of就是这种) 胖客户端模式(最好用 ...
- 重拾OS的实现
好久没看OS实现了- -.感觉最近过的乱七八糟的.最为一名学渣,苟活于学霸之间实在是很辛苦啊.不过还是感觉要坚持下去比较好,决定每天学一点,写点感想.也算是通过这个平台逼迫一下自己.= =#. 今天回 ...
- FreeMarker标签与使用
模板技术在现代的软件开发中有着重要的地位,而目前最流行的两种模板技术恐怕要算freemarker和velocity了,webwork2.2对两者都有不错的支持,也就是说在webwork2中你可以随意选 ...