Python3(2) Python语法基础

本系列主要学习Python的基本使用和语法知识,后续可能会围绕着AI学习展开。
Python3 (1) Python语言的简介
Python3 (2) Python语法基础
Python3 (3) Python函数
Python3 (4) Python高级特性
Python3 (5) Python 函数式编程
Python3 (6) Python 模块
Python3 (7) Python 面向对象编程
Python3 (8) Python 面向对象高级编程
Python3 (9) Python 错误、调试和测试
Python3 (10) Python IO编程
Python3 (11) Python 进程和线程
Python3 (12) Python 常用内建模块
Python3 (14) Python 网络编程
python基础部分相对简单,属于动态语言,大小写敏感,代码块通过缩进表示(约定4个空格键进行缩进,没有格式化的功能),注释采用“#”开头,典型的脚本语言特征,文件以“.py”格式保存。

数据类型

1. 整数

python 中整数没有大小限制,超出一定范围就直接表示为 inf(无限大)
python 通常用十进制(-10000、1234)、十六进制(0xa2b3c4d5、0xff00)
python 整数的运算是精确的(10/3 = 3.3333333333333335,10//3 = 3 只取整数部分)

2. 浮点数

python 中浮点数没有大小限制,超出一定范围就直接表示为 inf(无限大)
python 中浮点数写法有两种 一般写法(1.234)科学记数法(123.4e-2)
python 浮点数的运算会有四舍五入的误差

3. 字符串

python 中字符串用 ''('abc')或者""("abc")表示 ,多行字符串用''' ''' ('''abc
def''')
python 中支持转义符,也可以通过r'abc'或r'''abc'''来屏蔽转义符
python 中支持占位符“ %d 整数 ”、“%f 浮点数”、“%s 字符串”、“%x 十六进制整数”
python 中支持 format() 格式化 “'我是 {0}, 体重{1:.1f}kg'.format('小明', 60.125)”
python 中字符串一般采用 “utf-8” 编码,在文本首行进行申明,如下:

# -*- coding:utf-8 -*-

# 验证 r 与多行字符串的显示 并且屏蔽转义符
print(r'''hello,\n 
python''')

# 验证占位符的使用
print('abc%sef%.1f'%('d',12.345))

# 验证format()的使用
print('我是{0},体重{1:.1f}kg'.format('小明',60.125))

输出结果:

hello,\n 
python
abcdef12.3
我是小明,体重60.1kg

4. 布尔值

python 中布尔值用True、False 表示(注意是大写)
python 中支持 "and"、"or"、"not" 运算

5. 空值

python 中空值用 “None” 表示是一个特殊的值,不同于“0”

6. 列表 list

Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素
list中的元素可以是不同的数据类型

#定义list
names = ['张三','李四','王五']
print(names)

#获取list元素个数
print(len(names))

#获取list某个元素
print(names[0])

#获取list倒数某个元素
print(names[-1])

#追加元素到末尾
names.append('赵六')
print(names)

#指定位置插入元素
names.insert(1,'456')
print(names)

#替换指定位置的元素
names[0]= 123
print(names)

#删除list末尾元素
names.pop()
print(names)

#删除指定位置的元素
names.pop(0)
print(names)

#list中嵌套list
ages = [16,17,18]
names.insert(1,ages)
print(names)

#得到list中嵌套list的某个元素
print(names[1][0])

输出结果:

['张三', '李四', '王五']
3
张三
王五
['张三', '李四', '王五', '赵六']
['张三', '456', '李四', '王五', '赵六']
[123, '456', '李四', '王五', '赵六']
[123, '456', '李四', '王五']
['456', '李四', '王五']
['456', [16, 17, 18], '李四', '王五']
16

7. 元组 tuple

元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改,没有增删改查的方法

#定义tuple
names=('张三','李四','王五')
print(names)

#定义 空的tuple
names = ()
print(names)

#定义 一个元素的tuple
names =('张三',)
print(names)

输出结果:

('张三', '李四', '王五')
()
('张三',)

8. 字典 dict

Python内置了字典:dict的支持,全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。优缺点与java的map一致

#定义dict
dicts = {'张三': 16, '李四': 17, '王五': 18}
print(dicts)

#根据key查找对应的value
print(dicts['张三'])

#替换key对应的value
dicts['张三']=20
print(dicts)

#判断key是否存在
print('赵六'in dicts)

#通过get方法取value,key不存在可以设置默认值
print(dicts.get('赵六',-1))

输出结果:

{'张三': 16, '李四': 17, '王五': 18}
16
{'张三': 20, '李四': 17, '王五': 18}
False
-1

9. 只存key的字典 set

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
set可以看成无序和无重复元素的集合,可以做交集、并集等操作

# 定义Set
sets = set([1, 2, 4])
print(sets)

# 验证Set元素的唯一性
repeatSets = set([1,2,4,2,4,1])
print(repeatSets)

#set中 添加一个key
sets.add(3)
print(sets)

#set中 移除一个key
sets.remove(1)
print(sets)

#set 做交集、并集操作
s1 = set([1,2,3])
s2 = set([3,4,5])
print(s1&s2)
print(s1|s2)

输出结果:

{1, 2, 4}
{1, 2, 4}
{1, 2, 3, 4}
{2, 3, 4}
{3}
{1, 2, 3, 4, 5}

变量

python 中变量可以是任意数据类型
python 中同一个变量可以反复赋值,而且可以是不同类型的变量(动态语言的特性)
python 支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来

常量

python 中通常用全部大写的变量名表示常量 (PI = 3.14159265359)

条件语句

if...elif...

# if...else...
a = input("a: ")  # int
b = input("b: ")  # int
a = int(a)
b = int(b)
if (a > b):
    print("max: ", a)
else:
    print("max: ", b)

# if...elif...else...
score = input("score: ")  # string
score = int(score)
if (score >= 90) and (score <= 100):
    print("A")
elif (score >= 80 and score < 90):
    print("B")
elif (score >= 60 and score < 80):
    print("C")
else:
    print("D")

输出结果:

a: 10
b: 15
max:  15
score: 60
C

循环语句

for...in...循环

# for...in...
a = 0
for x in range(5):
    a = a + x
    print(a)

输出结果:

0
1
3
6
10

while...循环

# while
n = 0
while n < 5:
    n = n + 1
    print(n)

输出结果:

1
2
3
4
5

关键字

break、continue 使用方法与其他语言相同

参考

https://www.python.org
http://www.runoob.com/python3/python3-tutorial.html
https://www.liaoxuefeng.com

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,610评论 1 118
  • 0. 序言 python 是一门脚本语言:封装性强,语法简洁,开发效率高,只用函数open就可以打开一个txt文件...
    付凯强阅读 1,250评论 0 5
  • Python 简介Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设...
    在暴风雨中逆袭阅读 1,740评论 0 12
  • 本教程基于Python 3,参考 A Byte of Python v1.92(for Python 3.0) 以...
    yuhuan121阅读 3,094评论 1 6
  • 离老家屋后不远的地方 有一条弯弯的小河 日夜流淌着清清的河水 四季有着不同的歌 时而热烈奔放,浪花朵朵 也会安安静...
    碧海青天2017阅读 196评论 1 0