安装
安装python
验证python是否安装成功:
打开命令行窗口,输入:python
如能看到Python版本号,并且进入交互模式,表示安装成功
如果提示Python不是内部或外部命令,则需要手动配置环境变量,在Path中添加python.exe所在路径
安装pycharm
在pycharm中一定要配置好自己安装的python环境的解释器,不然后续自己安装的其他模块将无法使用
注释:
1)单行注释用#表示;
2)多行注释用一对三单引号/三双引号表示;
3)按一次Ctrl + /,快速注释/取消注释。
输入与输出
1)输入:input从标准输入读取一个字符串,并去掉最后的换行符
a=input()#手动输入152
print(type(a),a)#输出<class 'str'> 152
2)输入:print
print的参数为以下几项:
value, …:要打印的值, 以逗号分隔。
sep:分隔符,默认以空格分隔(打印的每项之间以空格分开)。
end:结束符, 默认为换行符(print默认会换行)。
数据类型:
在python中可以使用type()函数查看数据的类型
1)整数(int)
2)浮点数(float)
3)字符串(string)
4)布尔值(bool)
5)空值(None)
运算符:
1)加减乘除分别用+ - * /表示
(注:字符串做加法,就是 拼接;字符串做乘法,会复制与乘数对应数量的字符串;两个整数相除,结果为浮点数)
2)除法、取整、取余运算:
除法: 9/2 结果为4.55,浮点数
取整除:9// 2,结果为4,取商的整数部分
取余数: 9% 2,结果为1,取未除完的数
3) 布尔值计算
True表示1
False表示0
4)复合赋值运算
运算符号与=写在一块儿,组成复合赋值运算符:a+=或-=或*=或/=或//=或%=b,等价于a=a+或-或*或/或//或%b
5)逻辑运算
and:与,两边真则真
or:或,一边真则真
not :非真即假
6)比较运算
大于:>
小于:<
大于等于:>=
小于等于:<=
不等于:!= (两边不相等返回True,相等返回False)
等等于:==(两边值相等返回True,不相等返回False)
4.字符串(char)
1)定义:由一对单引号/双引号/三单引号/三双引号包围的数据结构
a='1525688'
2)字符串索引与取值:
a = "Helloworld"
print(a[0]) # 取出第一个字符
print(a[-1]) # 取出最后一个字符
print(a[2]) # 取出第三个字符
3)字符串切片:[起始索引:结束索引:步长]
(注:切片的时候是左闭右开型,即包含开始不包括结束)
a='helloword'
print(a[0:3]) # 取出前三个字符hel
print(a[:3]) # 取出前三个字符hel
print(a[-3:]) # 取出最后三个字符ord
print(a[4:7]) # 取出owo
print(a[:]) # 从头取到尾helloword
print(a[::2]) # 从头取到尾,并且是每隔2个取一个:hlood
4)转义字符
\n 换行符
\t 制表符,对齐
让转义字符不转义的方法:
# 在\后再加一根\:输出D:\n\t
print('D:\\n\\t')
# 在整个字符串前加r:输出D:\n\t
print(r'D:\n\t')
5)字符串的常用方法(字符串为不可变类型,以下操作不重新赋值并不会变更变量值)
替换字符串中的字符:str.replace(旧字符,新字符)
分割字符串:str.split(分割标志),返回列表
查找指定字符:str.find(字符),返回字符第一次出现的索引值,没有则返回-1
a = 'abcd'
b = a.replace('a', 'A')
print(a.replace('a', 'A')) #输出:Abcd
print(a) #输出:abcd
b = 'a,b,c,d'
print(b.split('c')) #输出:['a,b,', ',d']
print(b) #输出:a,b,c,d
c = 'abcdefgc'
print(c.find('m')) #输出:-1
print(c.find('f')) #输出:5
字符串格式化输出
1)百分号格式化
%s:字符串
%d:整数
%f:浮点数,通过%.nf指定精度,n是数字,保留几位就写几(会四舍五入)
name = '小明'
age = 19
money = 101.16
print('%s今年%d岁,他身上有%.1f元钱' %(name, age, money))
# 输出:小明今年19岁,他身上有101.2元钱
2)使用fomat函数,统一用{}占位,不需考虑数据类型
name = '小明'
age = 19
money = 101.16
print('{}今年{}岁,他身上有{}元钱'.format(name, age, money))
# 输出:小明今年19岁,他身上有101.16元钱
列表(list)
定义:由[]包围;列表中每个数据就是一个元素,元素之间以逗号隔开;列表中的元素可以是 任意 的数据类型
names = ['小明', '小华', '小张'] # 定义一个存放多个姓名的列表
1)快速生成数字列表:
list(range(开始值,结束值,步长))
注:range同样包含开始但是不包含结束
# 快速生成数字列表,生成1-5之间的所有数字
nums = list(range(1, 6))
print(nums) #输出:[1, 2, 3, 4, 5]
# 生成1-5之间的所有奇数
nums1 = list(range(1, 6, 2))
print(nums1) #输出:[1, 3, 5]
# 生成1-5之间的所有偶数
nums2 = list(range(2, 6, 2))
print(nums2) #输出:[2, 4]
2)列表嵌套:列表中的元素仍为列表
# 将取出的列表继续取值
food = [['广东', '广州'], ['江西', '南昌']]
print(food[1][1]) #输出:南昌
3)列表的使用方法
·增加:
追加元素到列表最后:list.append(值)
在指定索引位置插入值:list.insert(索引,值)
nums = [1, 2, 3, 4, 5, 6]
nums.append(7) # 追加到列表最后
print(nums) #输出:[1, 2, 3, 4, 5, 6, 7]
nums.insert(0, 'a') # 插入到指定位置
print(nums) #输出:['a', 1, 2, 3, 4, 5, 6, 7]
·删除:
删除指定索引位置的值:list.pop(索引),不填索引,则删除最后一个
根据值删除元素:list.remove(值),如果有多个值,则删除第一个
nums = [1, 2, 3,3, 4, 5, 6]
nums.pop() # 删除最后一个元素
print(nums) #输出:[1, 2, 3, 3, 4, 5]
nums.pop(0) # 删除指定索引位置的值
print(nums) #输出:[2, 3, 3, 4, 5]
nums.remove(3) # 删除指定的值,重复值仅删除首个匹配值
print(nums) #输出:[2, 3, 4, 5]
·修改:list[索引] = 新值
nums = [1, 2, 3,3, 4, 5, 6]
nums[0] = 'a' # list[索引]=新值
print(nums) #输出:['a', 2, 3, 3, 4, 5, 6]
·反转:list.reverse()
nums = [1, 2, 3,3, 4, 5, 6]
nums.reverse() #列表反转,改变列表本身
print(nums) #输出:[6, 5, 4, 3, 3, 2, 1]
·统计:
最大值:max(list名)
最小值:min(list名)
长度:len(list名)
统计元素出现的次数:list.count(元素)
nums = [1, 2, 3,3, 4, 5, 6]
print(len(nums)) # 查看列表的长度,输出:7
print(max(nums)) # 查看列表中的最大值,输出:6
print(min(nums)) # 查看列表中的最小值,输出:1
print(nums.count(3)) # 统计列表中元素出现的次数,输出:2
·排序:
从小到大排序:list.sort()
从大到小排序:list.sort(reverse=True)
(注:对于字母同样适用)
nums = [7, 1, 3,3, 2, 5, 6]
nums.sort() # 从小往大排序,改变列表本身
print(nums) #输出:[1, 2, 3, 3, 5, 6, 7]
nums.sort(reverse=True) # 从大往小排序,改变列表本身
print(nums) #输出:[7, 6, 5, 3, 3, 2, 1]
元组(tuple)
1)定义:用()包围;元组中的每个数据叫元素,元素之间用逗号隔开;元素可以是任意的数据类型
(注:不可变类型,当元组中有且只有一个元素时,必须要用逗号结尾,否则就不是元组)
a = (1, 2, 3, [1, 2])
b = (1,) # 当元组中有且只有一个元素时,必须要用逗号隔开,否则就不是元组
c = ('a',)
2)列表与元组互转
元组是不可变的,如果需要修改元组中的元素,可以将元组转换成列表进行修改
a = (1, 2, 3)
a = list(a) # 将元组转成列表
a.insert(0, 0)
a = tuple(a) # 将列表转回元组
print(a) #输出:(0, 1, 2, 3)
3)元组的统计方法(与list一致)
最大值:max(tuple名)
最小值:min(tuple名)
统计元素的个数(长度):len(tuple名)
字典(dict)
1)定义:字典是python中的一种基础数据结构,用{}包围;
字典中的元素以键值对的形式存在,键必须唯一,出现多个相同的键,只会记住最后一个
student = {"name":"李华", "age":18, "grade":"3"} #定义字典类型数据
2)字典的常用方法:
·修改:dict[键] = 新值
·删除键值对:dict.pop(键), 键是必填
·获取所有键:dict.keys()
·获取所有值:dict.values()
·获取所有键值对:dict.items()
student = {"name":"李华", "age":15, "grade":"3"}
student['age'] = 19 # 修改字典中的值
print(student) #输出:{'name': '李华', 'age': 19, 'grade': '3'}
student.pop('age') # 根据键删除键值对
print(student) #输出:{'name': '李华', 'grade': '3'}
print(student.keys()) # 获取所有键,返回列表,输出:dict_keys(['name', 'grade'])
print(student.values()) # 获取所有值,返回列表,输出:dict_values(['李华', '3'])
print(student.items()) # 获取所有键值对,返回列表,输出:dict_items([('name', '李华'), ('grade', '3')])