Python基础

1. 命名方法

大驼峰:所有单词的首字母均大写

小驼峰:第一个单词的首字母小写,其他单词的首字母小写

变量:字母、数字、下划线组成,不能以数字开头,不能使用内置关键字,区分大小写

2. 多种变量输出方式

查看类型:type(变量名)

字符转义:\ 例如原本的\t 表示一个tab键,\\t表示\t只作为了一个字符串打印出来而非一个tab键

类型有:整型int、单精度浮点型float、双精度浮点型double、字符串string、布尔型bool、

列表list、元组tuple、集合set、字典dict

格式化符号:字符串%s、整数%d、浮点数%f

python 复制代码
name='小明'
age=18
money=200000

print("我是%s,今年%d岁,存款%f元"%(name,age,money))

print("我是{},今年{}岁,存款{}元".format(name,age,money))

print("我是{0},今年{1}岁,存款{2}元;我的好朋友是{0},今年{1}岁".format(name,age,money))

print(f"我是{name},今年{age}岁,存款{money}元")  #推荐使用

input() 用户自定义输入函数

python 复制代码
name=input('请输入姓名:')
age=input('请输入年龄:')
money=input('请输入存款:')

print("我是%s,今年%d岁,存款%f元"%(name,age,money))

print("我是{},今年{}岁,存款{}元".format(name,age,money))

print("我是{0},今年{1}岁,存款{2}元;我的好朋友是{0},今年{1}岁".format(name,age,money))

print(f"我是{name},今年{age}岁,存款{money}元")   #推荐使用

数据类型转换:

int(x) 将x转为整型,同理与浮点型float、字符串str、元组tuple、列表list

eval(str) 将已转换的数据结果重新转换为原数据类型

个位、十位、百位数字的提取:

个位:i%10

十位:i//10%10 <==> (i/10)%10

百位:i//100%10 <==> (i/100)%10

日期时间:

python 复制代码
import datetime
日期时间:now=datetime.datetime.now()
日期:date=datetime.date.today()
时间:time=now.time()  #此处的now要引用日期时间的now
自定义获取年月日,时分秒:time.strftime("%Y-%m-%d",time.localtime())

时间睡眠:

python 复制代码
休眠1秒再执行
import time
while True:
    time.sleep(1)

随机数:

python 复制代码
import random
index=random.randint(0,len(strs)-1)

公共运算符:

  • 指合并 * 指复制 适用于字符串、列表、元组

in 判断元素是否存在 not in 判断元素是否不存在 适用于字符串、列表、元组、字典

公共方法:

len(x) 字符串长度,元素的个数

del 删除

max() min() 最大最小值

3. 容器

3.1 字符串:

给数据赋值:s='abcde'

查看类型:print(type(s))

字符串拼接:s=str1+str2

查找元素:

s.find('abc') 如果存在,返回开始的索引值,否则返回-1

s.index('abc') 如果存在,返回开始的索引值,否则报错

s.count('ab') 返回统计的字符串出现的次数,没有返回0

修改元素:

替换:s.replace(old值,new值) 将旧值替换为新值

分割:s.split('b') 字符串分割后返回列表形式,分割后b不存在 ['a','cde']

去除字符串前后空格:s.strip() 注:不会去除字符串中间的空格

3.2 列表

给数据赋值:list=['abc','de',12,13]

查找列表中的元素:print(list[2]) 可存放不同类型的数据,下标从0开始

print(list[4]) 4的值超过了最大索引值,会报错

查看类型:print(type(list))

给列表添加元素 append:

list.append('m') print(list)时得结果:['abc','de',12,13,'m']

#不可以合并写成print(list.append('m')) 会报None错误

在指定位置添加元素 insert:

list.insert(3,'m') print(list)时得结果:['abc','de',12,'m',13] 将m放置在索引为3的位置处

#不可以合并写成print(list.insert(3,'m')) 会报None错误

对列表批量增加元素 extend:

原有list=['abc','de',12,13] 现需要增加 list2=[1,2,3,4]的所有元素到 list中

list.extend(list2) print(list)时得结果:['abc','de',12,13,1,2,3,4]

如果使用append添加时,会直接将整个list2列表嵌套到list中:

list.append(list2) print(list)时得结果:['abc','de',12,13,[1,2,3,4]]

列表删除操作:

remove删除:依据元素值删除数据,删除元素时只删除第一次出现的元素

list.remove(12) 得结果:['abc','de',13]

del删除:依据下标删除数据

del list[1] 得结果:['abc',12,13]

修改列表元素:

依据下标对元素重新赋值:list[1]='ii' print(list) 得结果:['abc','ii',12,13]

查找元素:

python 复制代码
if  'ii'  in  list:
    print(list.index('ii'))
else:
    print('无')

排序操作:

翻转reverse

list.reverse() print(list) 得结果:['abc','de',12,13] ==> [13,12,'de','abc']

排序sort 注:不同数据类型不可以混用排序

list=[4,2,3,1]

list.sort() print(list) 得结果:[1,2,3,4]

list.sort(reverse=True) print(list) 得结果:[4,3,2,1]

3.3 元组

给数据赋值:tuple=('ab','cd',1,2,3)

元组中只有一个元素时:tuple=('ab',) #必须要有一个,

查看数据类型:print(type(tuple))

元组不支持添加、修改、删除

元组的查找:tuple[下标]

统计元组中元素的个数:len(tuple)

元组中的元素互换位置:(a,b)=(b,a)

3.4 字典

给数据赋值:dict={'a':3,'b':5,'c':7}

字典中的键不可以重复,值可以重复

查看数据类型:print(type(dict))

通过键去取值:print(dict['c']) 当键'c'不存在时会报错

为提升性能,使用print(dict.get('c')) 当键'c'不存在时返回None

添加键值对:dict['键']='值' #当键不存在时为添加一个新元素,当键存在时为修改键的值

删除数据:del dict['键1'] 删除指定的键值对

清空数据:dict.clear() 返回dict={}

4. 循环遍历

字符串、列表、数组

使用for循环遍历:

python 复制代码
s='abc123'   s=['a','b','c',1,2,3]   s=('a','b','c',1,2,3)
for i in s:
    print(i)
else:
    print('循环结束')

使用while循环:

python 复制代码
s='abc123'   s=['a','b','c',1,2,3]   s=('a','b','c',1,2,3)
i=0
while i<len(s):
    print(s[i])
    i+=1
else:
    print('循环结束')

字典的遍历

键:keys()

值:values()

键值对:items()

python 复制代码
for key in s.keys():
    print(key)

for value in s.values():
    print(value)

for item in s.items():
    key=item[0]
    value=item[1]
    print(f'{key}:{value}')

for key,value in s.items():
    print(f'{key}:{value}')

5. 索引及切片

5.1 索引

返回变量的长度或元素的个数:

len(s)

访问最后一个元素:

print(s[len(s)-1]) 下标为s的长度-1 或 print(s[-1])

由于字典是键值对存储的,所以无索引序列,查找元素时通过键来查找

5.2 切片

s='abc123...' s=['a','b','c',1,2,3...] s=('a','b','c',1,2,3...)

s[开始,结束,步长]

s[2:5] 拿取下标为2,3,4的数据,左闭右开原则

s[2:9:2] 拿取下标为2,4,6,8的数据,步长为2表示拿取的两个数之间相差2

s[2::] 拿取2之后的所有下标的数据 2,3,4,5....

s[2::2] 拿取从2开始步长为2的所有下表的数据 2,4,6....

s[::] 拿取全部的数据

s[::-1] 拿取全部的数据并对数据反转 3,2,1,'c','b','a'

相关推荐
数据智能老司机1 天前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机1 天前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i1 天前
drf初步梳理
python·django
每日AI新事件1 天前
python的异步函数
python
这里有鱼汤1 天前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook1 天前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室1 天前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三2 天前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试