初学者的python学习笔记1
推荐一段时间闲的蛋疼,总觉得再堕落下去不太好,便捡起了之前一直想学而没有学的python,以此记录一下学习笔记,同时亦是督促和复习。
学习51cto上的《2016最新Python开发基础课程-2.0版本》的视频版本,之所以看视频是因为视频讲解感觉会比看书清晰一些,不过详细还要找各种资料补充。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、python的版本
年表就不放了,python现在有两个大版本,2.0和3.0。3.0是2.0的升级版,简化了一些2.0不必要的内容,但是因为语法和2.0在有些地方有差异,所以不向下兼容。导致从2.0到3.0升级十分困难。
2.0的最新版本是2.7,官方支持到2020年。
二、变量
1、解释器
脚本第一行大家都知道是要指定调用的解释器,python有两种写法
#!/usr/bin/python
#!/usr/bin/env python
第一种写法就是一般指定python,第二种写法例如python是从2.0升级到3.0,位置就会从/usr/bin到/usr/local/bin,这样用第一种写法就会路径错误找不到解释器。而第二种写法会从环境设置中寻找python目录,更加安全一些。
2、变量
变量名只能是字母、数字和下划线的任意组合,变量的第一个字不能为数字,关键字不能声明为变量。
name=input("aaa")
name=raw_input(“aaa”)
name=int(input("aaa"))
第一种写法是3.0的屏幕输入,第二种是2.7的屏幕输入写法。
第三种是降字符串转化为数字的写法。
关于变量可以用一下几种显示方式:
name =input("name:")
age=input("age:")
job=input("job:") print("Inofmation of []:" + name + "\nName:[]" + name + "\nAge:[]" + age + "\nJob[]" + job ) #显示变量 加号每次会重新开辟内存空间,更站内存 print("Informationg of %s:\nname:%s\nage:%s\njob:%s" %(name,name,age,job) ) #有几个%(s是字符串,d是数字,f是小数点)写几个变量 msg='''
Inofmation of %s
name%s
age%s
job%s
'''%(name,name,age,job) #三引号可以在其中显示段落,和打印的相同,同时段手三引号表示范围内的注视,单引号和双引号效果相同
3、if判断
a=""
if a=="":
print("")
elif a=="":
print("")
else:
print("")
if判断和其他的用法没太大区别,需要注意的是强制段落缩进,python是通过段落缩进判断if结束。
4、循环
4.1 while循环
while True:真循环,无限循环,判断真是否为真。注意大小写。
while a=b:判断a是否等于b,满足条件继续循环,不满足则跳出循环。如果变量未赋值则报错,需要提前赋值。
n=-1
luck=13
guess_count=0 # while luck != n and guess_count < 3:
while guess_count < 3:
n=int(input("输入数字:"))
#print(n)
#print(luck)
if luck == n:
print("ok")
break
elif n > luck:
print("大了")
elif n < luck:
print("小了")
guess_count +=1
else:
print("当上面的条件不满足循环结束,就会打印这列,如果循环没有被正常退出,便不执行")
PS:在python3.0中可以直接输入中文,2.7则不可以直接输入,需要编码处理。
4.2、for循环
for i in range(3):
在range中直接输入循环的次数。
三、数据类型
1、数字
数字分为三种类型,Int整数,Float浮点,Long长整型。
长整型就是长的整型,在3.0中整型数字过长会自动转化为长整型,别用特别在意。
浮点就是小数点,占8个字节,其中52位表示底位,11位表示指数位,剩下1位表示符号。
Type(a)
这个命令可以查看数字类型。
2、字符串
name=a
print(“i am %s”)% name
%s表示字符串,%d表示整数,%f表示小数。
字符串常用的功能有移除空白,分割,长度,索引,切片。
2.1、移除空白
name =input(" name: ").strip()
strip括号内可以定制去掉的内容,默认为空白。
2.2、列表
列表可以储存多个信息,用于单独调用列表中的某个元素,索引值从0开始。
dir()可以查看命令,其中双下划线为私有命令。
Append追加,count统计,extend拓展,index索引,insert插入,pop删除一个,remove删除指定一个,reverse反转,sort排序
2.2.1、Append追加
默认将元素添加到最后一项
2.2.2、index索引
查找列表内某元素的索引值
2.2.3、count统计
统计列表内某元素的数量
2.2.4、insert插入
在指定索引位置插入指定元素
2.2.5、pop删除
删除最后一个元素
2.2.6、remove
删除指定元素
2.2.7、reverse反转
反转索引值
2.2.8、sort排序
按照数字,特殊字符,数字开头,字母的顺序排序
2.2.9、循环
提取某元素重复次数进行相应次数循环的删除
2.3、切片
分割列表,最后切取索引值的前一位,顾首不顾尾
间隔切取
反向切取
字符串扩展,将b放入a
字符串每个字母拆开单独当做元素放入
判断,如果4在列表a中,就打印ddd
3、元祖
name_list=(“1”,“2”,“3”)
将列表的[]变为(),只读的列表,只能查找统计切片,可以通过命令在元祖和列表间转换。
lits(a)
tuple(a)
4、布尔值
1为真,0为假。true为真,false为假。
&与运算,两个都是1才为1
|或运算,一个为1便为1
^非运算,不同为1
四、文件操作
(不要说我偷懒直接用截图...)
首先,3.0没有file,改成了open。其次,其实我这段学的满混乱的,感觉没有使用起来看很难记住....等多练习使用之后再补上吧。
f = open("test.log","w")
f.write("111\n") #创建新文件,会覆盖旧文件,如果不是w是a则是追加
f.write("111\n")
f.close()
f = open("test.log","r")
for line in f:
print(line,)
f.close()
初学者的python学习笔记1的更多相关文章
- 初学者的python学习笔记2
本来想是先把作业二搞定的,结果发现作业二用的字典,一脸懵逼,还是先搞定第二课吧.其实第二课和第一课内容差不多,据说是第一课的老师去美国了……不管怎么样先整理一下吧. ----------------- ...
- 初学者的python学习笔记1——作业篇
既然是学习,作业必不可少,其实在看后面讲思路之前还是感觉自己写的不错,但是和后面一对比,感觉实在是想的太片面太肤浅了,还需要太多太多改进的地方. 首先放一下作业要求. 最开始做的时候真的是完全按照字面 ...
- 初学者的python学习笔记2——作业篇
这次的作业是商城展示,最开始的确是一脸懵逼,后来研究了一下网上的例子,总算是搞出来了一个(其实算是网上列子的简化版?). 最开始是想要使用字典去做,发现显示列表的时候怎么也无法实现序号和名称对应,原因 ...
- 近期Python学习笔记
近期Python 学习笔记--一篇文入门python 作者:Pleiades_Antares(www.cnblogs.com/irischen) 写在前面的话 想学Python已经许久,一年多以前(应 ...
- 大学四年的Python学习笔记分享之一,内容整理的比较多与仔细
翻到以前在大学坚持记录的Python学习笔记,花了一天的时间整理出来,整理时不经回忆起大学的时光,一眨眼几年就过去了,现在还在上学的你们,一定要珍惜现在,有个充实的校园生活.希望这次的分享对于你们有学 ...
- python学习笔记整理——字典
python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...
- VS2013中Python学习笔记[Django Web的第一个网页]
前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...
- python学习笔记之module && package
个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...
- python学习笔记(六)文件夹遍历,异常处理
python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...
随机推荐
- 把数据输出到Word (非插件形式)
项目开发过程中,我们要把数据以各种各样的形式展现给客户.把数据以文档的形式展现给客户相信是一种比较头疼的问题,如果没有好的方法会 使得我的开发繁琐,而且满足不了客户的需求.接下来我会通过两种开发方式介 ...
- 金融IC卡 ARQC和ARPC计算方法和实例(转)
假设发卡行的IC卡应用密钥如下: PBOC_IMK_AC F0C34A8124CEE0A91A0B034AA97D6EAC PBOC_IMK_ENC ...
- [mobile开发碎碎念]手机页面上显示PDF文件
demo:http://mozilla.github.io/pdf.js/web/viewer.html 项目地址:https://github.com/mozilla/pdf.js <scri ...
- linux笔记:shell编程-文本处理命令
cut(字段提取命令,也叫列提取命令): printf(格式化输出命令): awk(awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理): sed(sed是一个很好 ...
- RedHat下安装Telnet服务端及客户端远程连接配置
Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户提供了在本地计算机上完成远程主机工作的能力. 配置之前请确保网络连通,如防火墙影响连接,请先关 ...
- 对于Python中RawString的理解
总结 1.'''作用: 可以表示 "多行注释" ."多行字符串" ."其内的单双引号不转义" 2.r 代表的意思是: raw 3.r 只对其 ...
- 批量转换编码 (gbk -> utf8)
使用 Notepad++ 批量的转换文件编码:Mass convert a project to UTF-8 using Notepad++ 步骤如下: 1.一般 Noptepad++ 安装完后已经自 ...
- 记一次使用jQuery清空元素
缘由: 数据量比较大,分页显示,页码是自己写的,动态创建页码,创建元素时会绑定元素的click事件,每次显示五个页码(1,2,3,4,5),点击2—4不换,点5,页码变成3,4,5,6,7. 遇到的问 ...
- JS数组方法汇总 array数组元素的添加和删除
js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^ var arr = new Array(); arr[0] = "aaa"; arr[ ...
- boost.asio与boost.log同时使用导致socket不能正常收发数据
现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...