简书python100例:http://www.jianshu.com/c/00c61372c46a
函数print():打印输入内容
字符串拼接:
1、+ 先拼接,再输出
2、,分次输出,用分隔符分开
3、sep设置分隔符
4、end关键字用于输出完成后追加的字符,默认 \n
>>> a="hello" + "world!"
>>> a
'helloworld!'
>>> a="hello "
>>> b=a+"world!"
>>> b
'hello world!'
函数input():输入内容默认转为字符串
>>> input()
12
'12'
创建名为login.py的程序文件,提示用户输入用户名,用户输入用户名后,打印欢迎用户
[root@room9pc01 nsd2019]# vim login.py
#!/usr/local/bin/python3
username=input("localhost login:")
print("welcome to",username)
#!/usr/local/bin/python3
username=input('localhost login:')
print('-'*20)
print("|welcome|",username)
print('-'*20)
工厂函数 int float bool str list tuple dict
数字运算:
+ - * / //(取整) %(取余)**()
>>> 6+3
9
>>> 3 + -2
1
>>> 8-9
-1
>>> 2*9
18
>>> 8/4
2.0
>>> 9//3
3
>>> 5%3
2
>>> 2**6
64
>>> 2+3*10/2**3
5.75
>>> (2+3)*10/2**3
6.25
比较运算
>>> 1 > 5
False
>>> 6 >= 4
True
>>> 6< 10
True
>>> 5!=9
True
>>> 8== 8
True
逻辑判断
>>> 1==1 and 2!=3
True
>>> 1<2 and 5>9
False
>>> 1<2 or 5>9
True
>>> 1 and 0
0
>>> 0 or 1
1
>>> 1< 4 or 1
True
>>> 1> 4 and 1
False
数字类型
int:有符号整数
bool:布尔值(True:1,False:0)
float:浮点数
complex:复数
>>> int(66.66)
66
>>> float(88)
88.0
>>> bool(3)
True
>>> bool(0)
False
>>> bool(-9)
True
>>> complex(1+5j)**2
(-24+10j)
定义字符串
• python中字符串被定义为引号之间的字符集合
• python支持使用成对的单引号或双引号
• 无论单引号,还是双引号,表示的意义相同
• python还支持三引号(三个连续的单引号或者双引号),可以用来包含特殊字符
• python不区分字符和字符串
字符串切片
• 使用索引运算符[ ]和切片运算符[ : ]可得到子字符串
• 第一个字符的索引是0,最后一个字符的索引是-1
• 子字符串包含切片中的起始下标,但不包含结束下标
起始位置<=字符串获取范围<终止位置
要显示的字符串长度=终止位置 - 起始位置
py_str[起始位置:终止位置:步长]
>>> a = "python 3.6.5"
>>> a
'python 3.6.5'
>>> a[6]
' '
>>> a[7]
'3'
>>> a[-5]
'3'
>>> a[2:4]
'th'
>>> a[2:]
'thon 3.6.5'
>>> a[:5]
'pytho'
>>> a="http://www.baidu.com/index.html"
>>> a[7:20]
'www.baidu.com'
>>> a[7:-11]
'www.baidu.com'
>>> a[20:31]
'/index.html'
>>> a[-11:-1]
'/index.htm'
>>> a[-11:] //负向默认索引,起始位置到结尾
'/index.html'
>>> a[:7]
'http://' //正向默认索引,初始位置到终止位置
>>> a[-24:-11]
'www.baidu.com'
>>> b="123456789"
>>> b[::2]
'13579'
>>> b[1::2]
'2468'
列表:
• 可以将列表当成普通的“数组”,它能保存任意数量
任意类型的python对象
• 像字符串一样,列表也支持下标和切片操作
• 列表中的项目可以改变
1、子对象获取使用切片语法
py_list[index]
py_list[起始位置:终止位置:步长]
2、添加对象到列表
py_list.append(新对象)
py_list+=[新对象]
3、列表是可以改变的
py_list[index]=新对象
列表操作
1、切片
>>> alist=[1, 2, 3, 4, 5, "python", "aa", "bb","cc"]
>>> alist[5]
'python'
>>> alist[7:]
['bb', 'cc']
>>> alist[6:]
['aa', 'bb', 'cc']
>>> alist[5][-2:] //嵌套切片,先取出字符串python,再取出最后两个字符
'on'
2、修改
>>> alist=["hello", "world"]
>>> alist
['hello', 'world']
>>> alist[1]
'world'
>>> alist[1]="nsd1812"
>>> alist
['hello', 'nsd1812']
3、追加
>>> tea=["犇犇"]
>>> tea.append("丁丁")
>>> tea
['犇犇', '丁丁']
>>> tea+["晶晶"]
['犇犇', '丁丁', '晶晶']
>>> tea += ["静静"]
>>> tea
['犇犇', '丁丁', '静静']
4、判断
>>> '静静' in tea
True
>>> '星星' in tea
False
>>> '凯凯' not in tea
True
>>> teacher = ['犇犇', '丁丁', '静静']
>>> teacher
['犇犇', '丁丁', '静静']
>>> id(teacher)
140041257956552
>>> teacher += ["ooxx"]
>>> teacher
['犇犇', '丁丁', '静静', 'ooxx']
>>> id(teacher)
140041257956552 //id值不变
元组tuple
• 可以认为元组是“静态”的列表
• 元组一旦定义,不能改变
元组使用()
元组里所有度操作和列表一样
元组是不可变对象
py_tuple[index]=新对象 ,报错
>>> tea = ('犇犇', '丁丁', '静静')
>>> tea
('犇犇', '丁丁', '静静')
>>> tea[1:2]
('丁丁',)
>>> tea += ("凯凯",)
>>> tea
('犇犇', '丁丁', '静静', '凯凯')
>>> id(tea)
140041258298728
>>> tea += ("ooxx",)
>>> tea
('犇犇', '丁丁', '静静', '凯凯', 'ooxx')
>>> id(tea)
140041257940336 //id值发生变化,表明生成了新的元组
字典
• 字典是由键-值(key-value)对构成的映射数据类型
• 通过键取值,不支持下标操作
字典使用{}
字典是key:value 键值对格式,可变对象
字典不支持下标和切片语法
字典调用直接使用py_dict[‘key’]
>>> dict= {"name":"bob", "age":23}
>>> dict
{'name': 'bob', 'age': 23}
>>> "bob" in dict
False
>>> "name" in dict
True
>>> dict['name']
'bob'
数据类型比较
• 按存储模型分类
– 标量类型:数值、字符串
– 容器类型:列表、元组、字典
• 按更新模型分类:
– 可变类型:列表、字典
– 不可变类型:数字、字符串、元组
• 按访问模型分类
– 直接访问:数字
– 顺序访问:字符串、列表、元组
– 映射访问:字典