python基础
# 1. python初识
Python是一种解释型、高级编程语言,设计用于编写自动化脚本,随着版本更新和功能增加,逐渐被用于独立的大型项目开发。
Python的设计哲学强调代码的可读性和简洁性,其语言结构以及面向对象的方法旨在帮助程序员为小型的和大型的项目编写逻辑清晰的代码。Python解释器几乎可以在所有的操作系统中运行,并且拥有一个巨大而广泛的标准库,能够自动管理内存使用。
Python的特点包括:
- 解释型语言:开发过程中没有编译环节,类似于PHP和Perl语言。
- 交互式语言:可以在一个Python提示符后直接执行代码。
- 面向对象:支持面向对象的风格或代码封装在对象的编程技术。
- 高级数据结构:提供了适用于各个主要系统平台的源码或机器码。
- 动态类型:开发人员无需考虑诸如内存等底层细节,可专注于编写代码逻辑本身。
# python安装
IDLE:官网:https://www.python.org/downloads/
下载安装即可,安装完成可通过命令python --version
查看版本验证是否安装成功
# python基础语法
# python标识符:数字,字母,下划线
- 以单下划线开头的代表不能直接访问的类属性。需通过类提供的接口进行访问,不能用"from xxx import *"而导入
- 以双下划线开头的(__foo)代表类的私有成员;
- 以双下划线开头和结尾的(foo)代表python里特殊方法专用的标识,如__init__()代表类的构造函数;
- 可以使用斜杠( \)将一行的语句分为多行显示。
- Python 使用单引号(' ),双引号(" ),三引号(''' """) 来表示字符串;
- python中单行注释采用 # 开头。python 中多行注释使用三个单引号(''')或三个双引号(""")。
- 变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
- Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。
- 在Python 里的数值和字符串之类的都是不可变对象,对不可变对象操作的结果都会生成一个新的对象。
# 输入输出函数
输出一些特定数据,我们就必须用到print()函数
print('今天你吃饭了吗?')
通过input()函数获取我输入的数据值
b = input("请输入运算符号")
print(b)
2
# pythons数据类型
- Numbers(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Sets(集合)
- Dictionary(字典)
# Numbers(数字)
数字数据类型有int、float、bool(布尔型)、complex(复数)
算术运算符
在Python中,运算符有:+、-、*、/、%、**、//(加、减、乘、除、取模、次方、整除)
注:Python 中没有 ++ 或 -- 自运算符
- +:加法,两个变量相加求和
- -:减法,两个变量相减求差
- *:乘法,变量相乘求积
- /:除法,变量相除求商
- %:取模,得到除法结果第一位余数
- **:次方,求变量(a)的n次幂->(a)ⁿ,可以用pow()函数代替
- //:整除,取除法后的整数部分
# String(字符串)
使用单引号(' ),双引号(" ),三引号(''' """) 来表示字符串
a = 'Hello','World'
b = 'Hello''World'
#注意字串符a与b的区别,如果有逗号,那么输出时将会是两个字串符一起输出: ('Hello','World')
# 如果没有输出将会两个字串符相互结合输出: HelloWorld
c,d= 'Hello','World'
print(b[0:-2])
print(c[0:-3])
print(d[0:-1])
print(c*2,d*2)#各输出两次
print((c+d)*2)#结合输出两次
print('Hello,\nWorld')
print(r'Hello,World')#加了r后转义字符失效
2
3
4
5
6
7
8
9
10
11
12
13
# List(列表)
创建一个列表,只需要把逗号分隔的不同的数据项使用方括号括起来即可。
#列表的数值内容中,数值可以类型不同
变量名称 = ['数值',数值]
2
- 访问和切片操作
list[start_index:end_index:step]
- start_index:起始位置
- end_index:结束位置
- step:步进,为正数的时候表示从前向后,负数表示从后往前,决定了切片的方向,step参数可以省略,步进默认为1。
输出指定列表被切割后的指定数据
print(a[0:1:3])
反转列表
print(a[::-1])
- 按索引获取数据
a = ['a','b','c',3]
print(a[3])
2
- 修改列表中指定索引数据,可以直接修改
a[0]='A'
a[0:3]='A','B','C'
2
- 删除列表中指定索引数据
a[0]=[]
- 统计数据个数
print(len(a))
- 在列表末尾添加新数值
a.append('1111')
# Tuple(元组)
元组的语法与列表差不多,不同之处就是元组使用小括号(),且括号中元素不能被改变,创建元组可以不需要括号;而列表是使用中括号[]。
变量名称 = ('元素',元素)
变量名称 = "元素","元素"
a = ('Java','Python',2)
b = () #空元组
2
3
4
- 元组的访问和切片
str1 = a[0]
tup3 = a[2:3]
2
- 删除元组
del a
- +和*运算
a = ('Java','Python',2)
b = "Hello","World"
c = a+b #相互结合
print(c*2)#复制输出
2
3
4
- 统计数据个数、位置
print(len(a))
print(a.index('Java'))
2
3
- 判断某元素是否在元组里
bool1 = 'Java' in a
- max,min,count函数
print(max(a))
print(min(a))
count1 = a.count('Java')
print(count1)
2
3
4
- list转换为列表
list_1 = list(a)
# Sets(集合)
Set(集合)数据类型它和Tuple、List一样都属于复合数据类型,而且集合数据类型是一种无序不重复元素的序列
使用大括号{}或内置函数Set()来创建一个集合(创建一个空集合必须用Set()函数,不可用{},因为{}实质是创建一个空的字典
#创建集合a
a = {'a','b','c','d','a'}
#因为集合是无序不重复元素序列,所以不会输出多出的a
print(a)
#运用Set()函数创建集合b
b = set('abcdeffff')
2
3
4
5
6
与List与Tuple一样,Set也支持数学运算符运算
a = set('sdfygsyfysdgfsdtfsyhf')
b = set('hgdhsdfsghdvhgsfs')
print(a - b) #减号(-)的作用就是输出a集合中b集合内没有的元素
print(a | b) #竖线符号(|)主要输出集合a或b中包含的元素
print(a & b) #逻辑符号(&:and)就是要输出集合a和b中共同包含的元素
print(a ^ b) #乘方(^)主要输出不同时包含于a和b的元素
2
3
4
5
6
# Dictionary(字典)
在Python中,字典是另外一种数据储存的可变容器,而且可以存储任何数据类型的数据值对象。
创建一个空字典需要用大括号{},在字典中每一个值对用冒号,且每个值需要逗号(,)分隔。
a = {'a':'Python','b':'Java','c':'C++'}#创建一个字典
- 字典的访问
a = {'a':'Python','b':'Java','c':'C++'}
print(a['a'])
2
- 字典的修改
a['a']='Python3'
a['d']='C#'
2
- 字典的删除
a.clear() # 清除
del a['a']
2
# 判断语句
在Python中,判断语句有if、if…else、if…elif…else。关键词有or与and。
- if,比如输入两个数,比较大小
a =int(input())
b = int(input())
if a > b :
print("第一个数大")
if a < b :
print("第二个数大")
2
3
4
5
6
- if…else,比如输入两个数,比较大小
a =int(input())
b = int(input())
if a > b :
print("第一个数大")
else a < b :
print("第二个数大")
2
3
4
5
6
- if…elif…else,比如输入一个数,判断这个数是正数、负数还是零
a =int(input())
if a > 0 :
print("正数")
elif a < 0 :
print("负数")
else :
print("零")
4. or与and
比如输入两个数,判断这两个数是否都是正数
```python
a =int(input())
b = int(input())
if a > 0 and b > 0 :
print("都是正数")
else :
print("不是都是正数")
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 循环语句
在Python中,循环语句有for和while。 for循环可以遍历任何可迭代对象,可以是一个列表或者一个字符串等
注:Python中没有do …while循环语句!
for 变量 in 顺序:
for i in range(8): #range(8)表示从0到7
print(i)
a = '123456abcd'
for i in range(len(a)):
print(i,':',a[i])
2
3
4
5
6