Python学习笔记1 基础篇
输出
print()
>>> print('hello, world')
hello, world
>>> print(100 + 200)
300
>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300
输入
input()
>>> inData = input("请输入")
请输入1
>>> print(inData)
1
变量
- 变量无需声明
- 类型无需指定,动态类型
- 命名规则与java、C语言一致
常量
在Python中,通常用全部大写的变量名表示常量。并无特定的关键字。
数据类型
整形
Python可以处理任意大小的整数,当然包括负整数。支持十六进制以0x开头。
浮点型
浮点数也就是小数,常规写法如1.23,3.14,-9.01,等等。
很大或很小的浮点数,可表示为1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
字符串
- ''与""都表示字符串
- \为转义符(\n \r '…)
- r’'表示内部的字符串默认不转义
- ‘’’…’’’ 三个单引号-格式表示多行内容
示例
>>> print('''aa
... bb
... cc''')
aa
bb
cc
特殊函数及用法
获取字符的整数表示
ord()
>>> ord("A")
65
将编码转换为对应的字符
chr()
>>> chr(65)
'A'
得到字符串长度
len()
>>> len("123456")
6
插入字符
format()
它会用传入的参数依次替换字符串内的占位符{0}、{1}、{2}
>>> "{0}+{1}={2}".format(a,b,a+b)
'1+2=3'
占位符
占位符 | 替换内容 |
---|---|
%d | 整数 |
%f | 浮点数 |
%s | 字符串 |
%x | 十六进制整数 |
>>> a=1
>>> b=2
>>> "%d+%d=%d" % (a,b,a+b)
'1+2=3'
布尔值
True
False
逻辑运算
在Python中增加了and、or、not。其中not 与 !使用一致,and、or与&、|在部份情况下有所区别
在逻辑变量使用时,and、or与&、|用法一致
数值变量下要注意了,and、or与&、|输出不一致
1&2,2在二进制里面是10,1在二进制中是01,那么01与运算10得到是0
&、|是按位进行操作
and中含0,返回0; 均为非0时,返回后一个值
or中, 至少有一个非0时,返回第一个非0
空值
用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
等同于Java中的null
条件判断
与java、C语言等对比
- 取消小括号以及大括号
- 条件语句结束为**?*
- 执行语句缩进2行
- 其他一致
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
>>> num=30
>>> if num <= 30:
... print("min")
... else:
... print("max")
...
min
>>>
循序
while
语法规则
while 条件:
执行语句1
执行语句2
...
示例
>>> num = 0
>>> i = 1
>>> while i<=100:
... i += 1
... num = i+num
...
>>> print(num)
5150
for
语法规则
for ... in ...:
执行语句
示例
>>> num = [1,2,3,4,5]
>>> total = 0
>>> for i in num:
... total = total+i
...
>>> print(total)
15
break
跟java、C一样
continue
跳过当前这一次循环,直接开始下一次循环。
元素组
tuple
简称:不可变元组
tuple和list非常类似,但是tuple一旦初始化就不能修改。
>>> tupleList = (1,2,"3")
>>> tupleList[1]
2
>>> tupleList[1]=1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
tuple还可以包含list,且只有list是可变的。
>>> tupleList = (1,2,listData)
>>> tupleList
(1, 2, ['1', '2', '3'])
>>> tupleList[2][0]=1
>>> tupleList
(1, 2, [1, '2', '3'])
>>> tupleList[0]=0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
记忆技巧:小括号(),小时候是不会变的
list
简称:可变元组
list是一种有序的集合,可以随时添加和删除其中的元素。
list里面的元素的数据类型也可以不同。
>>> listData = ["1","2","3"]
>>> listData2 = ["1",2,10]
>>> listData
['1', '2', '3']
>>> listData2
['1', 2, 10]
特别要了解的是正常索引位置**[0]、[1]等,还可以用[-1]**做索引,直接获取最后一个元素。
>>> listData[0]
'1'
>>> listData[2]
'3'
>>> listData[-1]
'3'
>>> listData[-3]
'1'
追加元素到末尾
.append()
>>> listData.append("4")
>>> listData
['1', '2', '3', '4']
插入指定位置元素
insert(0, ‘0’)
>>> listData.insert(0, '0')
>>> listData
['0', '1', '2', '3', '4']
删除末尾/指定位置元素
pop()
>>> listData.pop()
'4'
>>> listData
['0', '1', '2', '3']
>>> listData.pop(0)
'0'
>>> listData
['1', '2', '3']
>>> I
记忆技巧:中括号[],长大的过程中是会改变的。
dict
简称:键值对元组
key-value存储方式,键值对。
示例
>>> list = {'one':1,'two':2,'three':3}
>>> list["one"]
1
如果key不存在,dict就会报错:
>>> list["four"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'four'
get()
通过**get()**方法,如果key不存在,可以返回None,或者自己指定的value
>>> list.get('four',-1)
-1
>>> list.get('four')
>>>
注意:返回None的时候Python的交互环境不显示结果。
pop()
要删除一个key,用**pop(key)**方法,对应的value也会从dict中删除
>>> list.pop('one')
1
>>> list
{'two': 2, 'three': 3}
记忆技巧:大括号{},长大了要找一个真心相爱的结婚就成一对对了,但心是不会变的(key是不可变),人可能会长胖(value是可变的)。
set的数组
set可以看成数学意义上的无序和无重复元素的集合。
>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}
add()
添加元素到set中,可以重复添加,但不会有效果
>>> s.add(4)
>>> s
{1, 2, 3, 4}
>>> s.add(4)
>>> s
{1, 2, 3, 4}
remove()
删除元素
>>> s.remove(4)
>>> s
{1, 2, 3}
因此,两个set可以做数学意义上的交集、并集等操作。