python特点:
1. 简单
2. 边编译边执行
3. 高级 ------- 不注重底层的源码
4. 面向对象 --------- 既可以支持面向对象也可以支持面向过程的一门语言
5. 可扩展 ------ 扩展模块
6. 免费开源
7. 可移植
8. 丰富的库
9. 可嵌入性
变量:
变化的量 -----代表的是一个未知数 方程世中的X 10+20
运行时环境(程序运行的过程中,可以变化的量)变化的量
数据类型 变量名称 = 变量值;
强数据类型语言 声明数据类型 每个类型所占据的内存大小是不一样的
byte boolean 占 1个字节
short char 占 2个字节
int float 占4个字节
long double 占8个字节
python 是一个典型的弱数据类型语言
弱数据类型语言 不用声明数据类型
变量名称 = 变量值
强数据类型语言:当定义变量的时候,一定要声明变量类型,当声明了变量类型后,不允许存储其他数
据类型的
"""
多行注释
多行注释
"""
'''
多行注释
'''
一定不能使用中文符号,不能混合使用
a = 1
b = 2
c = a + b
弱数据类型语言:变量类型不固定,值是什么类型,变量自动变成对应的类型
变量的命名规范:
1. 变量名称只能由有效字符(数字、字母、下划线)组成 (name+ 报错 --- 语法错误)
2. 不能以数字开头
3. 不能是关键字或者保留字
4. 变量命名尽量有意义
int a = 10;
a = 20;
a = "hahahha" // 报错
type() ------ 查看变量的类型
print() ------ 在控制台输出字符串 标准的输出函数
如何定义字符串:
'' "" """ """ ''' '''
s = str() 后面再讲
变量名如果由多个字母组成的时候:
大驼峰法 ( UserName)
小驼峰法(userName)
下划线法 User_Name user_Name (官方推荐)
查看python中的关键字和保留字:
import keyword
keyword.kwlist
数据类型和数据类型的转换:
python是弱数据类型语言,所以没有数据类型----------错误的
python是弱数据类型语言,去声明变量的时候不用声明数据类型,系统会根据变量的值自动判断其数据
类型
分类:
基本数据类型和复合数据类型(引用数据类型)
5.1.1 基本数据类型
数值型
整型 int
浮点型 float
复数(虚数) 一般用不到 数学模型
布尔类型(bool)
一般只有两种情况的时候会用到布尔类型 True False (python中要注意大小写)
字符型(字符串)
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break',
'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for',
'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or',
'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
在强数据类型语言(Java)中,字符串是一种对象,在弱数据类型语言中,字符串属于一种数据类型-----
-- 特点
定义字符串的方式:
" 字符串" ' 字符串 ' """字符串 ""'' ‘’‘ 字符串 ’‘’ str()
字符串中可以包含各种语言
ASCII码 ----- 对于单个字符的编码(ASCII),Python提供了ord()函数获取字符的整数表示(获取字符对
应的ASCII的值)chr()函数把编码(ASCII)转换为对应的字符
>>> ord('A')
65
>>> ord('a')
97
>>> chr(65)
'A'
>>> ord("中")
20013
>>> chr(25991)
'文'
>>> ord("文")
25991
\n ------ 换行符 \t ------- 制表符
如果字符串中包含多个换行符\n,可以阅读(检查)的时候不是特别方便,Python中允许使用""" """或
者''' '''进行多行显示
注意:必须是三引号(三单引或三双引,不能混合使用),不能是双引号
步骤:在命令行中先输入print("""内容,再回车输入下一行内容,直到输入结束部分""")后,执行该语句
(print)并打印出结果
type()------- 判断数据类型
print() ------ 标准的输出函数
input() ------ 标准的输入函数,默认的返回值是str
将字符串转换为整型 ------ int(字符串)
算术运算符:
+ -------- 加法运算
- -------- 减法运算
* -------- 乘法运算
/ ---------- 除法运算 c c++ java 强数据类型语言中 整除运算
// -------- 整除运算
% ------- 取余运算 求余数
** ------ 幂次方运算
比较运算符:
> ------- 大于
< ------- 小于
>= ------- 大于等于
<= ------- 小于等于
== ------- 等于
!= ----- 不等
逻辑运算符:
and ------ 且 与 (&或者&& 其他语言中)多个条件必须同时满足的时候,结果为True
or ------- 或 多个条件中至少有一个为真,结果才为真
not ----- 非 取反 ,在Python中一般会和in关键字连用
赋值运算符:
= ------ 等于 赋值
+= ----- 加等 a += 1 相当于 a = a + 1
-= ----- 减等
*= ------ 乘等
/= ------ 除等
//= ----- 整除等
**= ----- 幂次方
顺序结构:
从左往右,从上往小
选择结构:
单分支
注意:缩进 ---- tab 空格 不能混合使用
根据python缩进的规则,只要满足条件(True),才会执行缩进部分
双分支
>>> a = 10
>>> b = 2
>>> a = b
>>> a
2
if (条件) {
条件满足的情况下执行语句
}
if 条件 :
#缩进 --- 表现层级关系
#条件满足的情况下执行语句
#单分支
age = 17
if age >= 18 :
print("恭喜你!你已经成年了!")
print("成年了!!!!")
if (条件) {
条件满足的情况下执行语句
}else{
条件不满足的情况下执行语句
}
if 条件 :
#缩进 --- 表现层级关系
#条件满足的情况下执行语句
else :
#缩进
#条件不满足的情况下执行语句
多分支(三分支)
选择结构中,从上到小进行判断,但凡满足一个条件之后,执行完该情况下语句后,就不会再往下继续
执行了
#双分支
age = 20
if age >= 18 :
print("恭喜你!你已经成年了!")
print("成年了!!!!")
else :
print("对不起,你是未成年!!")
if (条件1) {
条件1满足的情况下执行语句
}else if(条件2){
条件2满足的情况下执行语句
}else if(条件3){
条件3满足的情况下执行语句
}
.....
else{
以上条件均不满足的情况下执行的语句
}
if 条件1 :
#缩进 --- 表现层级关系
#条件1满足的情况下执行语句
elif 条件2 :
#缩进
#条件2满足的情况下执行语句
elif 条件3 :
#缩进
#条件3满足的情况下执行语句
......
[else :
#以上条件均不满足的情况下执行的语句
]
[ ] ----不是必须得写的,可选部分
#多分支
age = 13
if age >= 18 :
print("恭喜你!你已经成年了!")
print("成年了!!!!")
elif age >=12 :
print("青少年!!!!")
elif age >=6 :
print("幼年!!!!")
else :
print("小屁孩")
循环结构:
while循环
拼接字符串:
1. +str()
2. %s占位符
3. 使用,
4. 使用{}补充,采用字符串中的format()
注意:format是字符串中的方法,所以需要.format()
while语法格式:
#多分支
age = 13
if age >= 18 :
print("恭喜你!你已经成年了!")
print("成年了!!!!")
elif age >=6 :
print("幼年!!!!")
elif age >=12 :
print("青少年!!!!")
else :
print("小屁孩")
#1+2+3+4的值
num = 1 + 2 + 3 + 4
print("num的值是:"+str(num))
print("num的值是:%s"%num)
print("num的值是:",num)
print("num的值是:{}".format(num))
print("{} + {} = {}".format(num1,num2,num3))
while 条件:
#缩进 ---- 强缩进语言
#执行循环体
for循环
加强循环(foreach for in)
for in ---- 遍历容器
for循环是用来遍历容器(迭代可迭代的对象)
比如说:打印1~100
引入了一个函数:range()
range ---- 范围,区间
range(参数) ------- 表示的是从0开始到参数结束,不包含这个参数的,前闭后开的区间
range(参数1,参数2)----表示的是从参数1到参数2之间,不包含参数2,前闭后开的区间
range(参数1,参数2,step)------表示的是从参数1到参数2以step为单位之间的数,不包含参数2,前闭后开的区间
容器:
1. 存放多个元素的一种数据类型
2. 弥补了变量只能存储单个值得缺陷
python中的容器包含:列表、元组、集合、字典
列表(list --- 线性表)
常见的线性表 ------ 数组、链表,队列、栈 -------- 基于链表实现
注意:python没有数组的,特点:连续的 查询快 删除比较麻烦
链表:单向链表和双向链表
栈:先进后出
队列:先进先出
列表----- 基于双向链表实现的
定义方式:
第一种:根据弱数据类型语言的特点进行定义
ls = [1,2,3,4]
第二种:全局函数list()
ls1 = list()
ls2 = list([1,2,3,4,5])
如何访问列表中的元素?
通过下标访问元素,注意下标是从0开始的,如果超过下标,会报错
可以通过下标去改变值
print(" ",end="")
print("")
#下半部分
for i in range(layer // 2 ,0,-1):
#计算空格的个数
spce_num = layer - i
for j in range(0,spce_num):
print(" ",end="")
#计算*个数
star_num = 2 * i - 1
for j in range(0,star_num):
#判断是不是第一个和最后一个
if j == star_num//2:
print("*",end="")
else:
print(" ",end="")
print("")
下标可以为负数
求列表的长度-------- len() ------返回容器的长度
常用方法:
'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'
append() ----向列表的尾部添加元素
insert(index,object) ------向指定的位置添加元素
sort() -------- 列表排序(默认从小到大的顺序,类型是int)字母按照ASCII的值进行排序,元素类型必须是一致
index() ----- 查找元素出现在列表中的位置(元素第一次出现的位置),返回的是下标
reverse() ------ 将列表进行翻转
count() ------- 统计列表中元素出现的个数
remove() ---- 删除元素(移除元素),通过元素删除,如果元素出现多次,删除是第一个位置的元素,如果元素不存在会报错
clear() ------清除列表
copy() -------- 拷贝 浅拷贝对象 不等价与 = 在堆内存中进行的拷贝
extend()------ 合并列表
pop() -------- 与append()相反,删除列表最后一个元素,返回的是删除掉的元素(有返回值的),如果要删除指定位置的元素,用pop(i),其中i指的是下标
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)