python初学笔记1
来源:互联网 发布:python读txt文件 编辑:程序博客网 时间:2024/06/05 15:07
October 30, 2017 9:00 PM
Python入门笔记
Python变量和数据类型
数据类型
- 整数
- 浮点数
- 字符串(以’ ‘或” “括起来的任意文本)
- 布尔值(只有True/False两种值;可以用and/or/not运算)
- 空值(用None表示,不能理解为0)
print语句
print 'hello,world'
print语句也可以跟上多个字符串,用逗号隔开,就可以连成一串输出:
print 'The quick brown fox','jumps over','the lazy dog'
print会依次打印每个字符串,遇到逗号会输出一个空格,因此字符串输出为:
The quick brown fox jumps over the lazy dog
注释
Python的注释以#开头,后面的文字直到行尾都算注释
# 这一行全部都是注释print 'hello' # 这也是注释
变量
在Python中,变量的概念基本上和初中代数的方程变量是一致的。
在Python程序中,变量不仅可以是数字,还可以是任意数据类型。变量是用一个变量名表示,变量名必须是大小写英文,数字和下划线的组合,且不能用数字开头。
在Python中,等号是赋值语句,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:
a = 123 #a是整数print aa = 'imooc' #a变为字符串print a
这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型。
a = 'ABC'b = aa = 'XYZ'print b
结果b还是ABC
List和Tuple类型
list
list是一种有序的集合,可以随时添加和删除其中的元素,构造list直接用[]把list的所有元素括起来,就是一个list对象。
创建list
L = ['Lisa','Bob','Tracy']
由于Python是动态语言,所以list中包含的元素并不要求都必须是同一种数据类型,我们完全可以在list中包含各种数据:
L = ['Lisa',100,True]
访问list
- 顺序:索引从0开始,例如print L[0]就是Lisa
- 倒序:倒数第一用-1表示,例如print L[-1]就是Tracy
添加新元素
- append():把新元素添加到list的尾部
- insert():接受2个参数,第一个参数是索引号,第二个是待添加的新元素
L = ['Adam','Lisa','Bart']L.append('Paul')L.insert(0,'Dufre')print L
输出:[‘Dufre’,Adam’,’Lisa’,’Bart’,’Paul’]
删除元素
- pop():删除list的最后一个元素,并且它还返回这个元素,所以我们执行L.pop()后,会打印出’Paul’
- pop(num):删除list中,索引为2的元素
tuple
tuple是另一种有序的列表,中文翻译为”元组”。tuple和list非常类似,但是tuple一旦创建完毕,就不能修改了。
t = ('Adam','Lisa','Bart')
这个t就不能改变了,tuple没有append()方法,也没有insert()和pop()方法。
因为用()定义单元素的tuple有歧义,所以Python规定,单元素tuple要多加一个逗号”,”,这样就避免了歧义:
t=(1,)print t
打印结果:(1,),自动添加的逗号是为了更明确的告诉你这是一个tuple
t = ('a','b',['A','B'])L = t[2]L[0] = 'X'L[1] = 'Y'print t
输出:(‘a’,’b’,[‘X’,’Y’])
这个例子不是说明tuple是可变的,表面上t中的元素变了,但其实变的不是tuple的元素,而是list的元素。tuple的指向并没有变。
条件判断和循环
Python代码的缩进规则
具有相同缩进的代码被视为代码块,Python的习惯写法:4个空格,不要使用Tab
if/if-else/if-elif-else
if/else和C语言中的类似,elif相当于else if
if age >= 18: print 'adult'elif age >= 6: print 'teenager'elif age >= 3: print 'kid'else: print 'baby'
for循环
L = ['Adam','Lisa','Bart']for name in L: print name
while循环
N = 10x = 0while x < N: print x x = x+1
Dict和Set
Dict
dict是存储key:value的关系,花括号{}表示这是一个dict
d = { 'Adam':95, 'Lisa':85, 'Bart':59}
相应的操作:
- d[key]:查找对应的value
- d[key]=value:更新以后key-value或添加新的key-value
- for key in d:遍历dict
dict的特点:
- 查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样
- 占用内存很大,还会浪费很多内容
- key不能重复
- 内部是无序的
- 作为key的元素必须不可变
Set
set持有一系列元素,这一点和list很像,但是set的元素没有重复,而且是无序的,这点和dict的key很像。
可以调用set()病传入一个list,list的元素将作为set的元素
s = set(['A','B','C','C'])print s
结果为set([‘A’,’C’,’B’]),set会去掉重复的元素
相应的操作:
- ‘B’ in s:输出 True,set没有办法通过索引来访问,但可以判断某个元素是否在set中
- for key in d:遍历set
- s.add():添加元素
- s.remove():删除元素
set的特点:
- set存储的元素也是没有顺序的,内部结构和dict很像,唯一区别是不存储value
函数
在Python中,定义一个函数要使用def语句,依次写出函数名/括号/括号中的参数和冒号,然后在缩进块中编写函数体,函数的返回值用return语句返回
def my_abs(x): if x >= 0 return x else return -x
Python中函数还可以返回多个值,这个多值实际上是返回一个tuple
import mathdef move(x,y,step,angle): nx = x + step * math.cos(angle) ny = y - step * math.sin(angle) return nx,nyx,y = move(100,100,60,math.pi/6)print x,y
Python中函数还可以接受任意个参数
def fn(*args): if len(args) == 0 return 0.0 else return sum(args)*1.0/len(args) print fn() print fn(1,2) print fn(1,2,2,3,4)
输出为:0.0 1.5 2.4
- Python初学笔记(1)
- python初学笔记1
- 初学Python学习笔记1
- Python初学笔记~
- python初学笔记(2)
- Python初学笔记
- Python 初学笔记
- Python初学笔记
- python初学笔记
- python初学的笔记
- 初学python笔记。
- python初学笔记
- Python初学笔记
- Python初学笔记3
- Python初学笔记-继承
- python初学笔记2
- 初学Python笔记(一)
- Python初学笔记(转载)
- Tensorflow[基础篇]——LSTM的理解与实现
- Gin开发03
- 给定字符串str1和str2,求str1中子串含有str2所有字符的最小子串长度
- MySQL基础(三)
- Linux学习笔记(1) -- 初识Linux
- python初学笔记1
- 大数相乘(高精度)
- Error:Jack is required to support java 8 language features.
- React Native Text组件之点击和长按事件
- 自定义View系列教程(从基础绘制讲起哦~~~~~~~)
- 2017 .11.1笔记
- Hibernate常见面试问题及答案
- css使用box-align和box-pack使div的子元素垂直居中
- 【SignalR学习系列】8. SignalR Hubs Api 详解(.Net C# 客户端)