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·算法·机器学习·矩阵
半盏茶香1 小时前
在21世纪的我用C语言探寻世界本质 ——编译和链接(编译环境和运行环境)
c语言·开发语言·c++·算法
Evand J2 小时前
LOS/NLOS环境建模与三维TOA定位,MATLAB仿真程序,可自定义锚点数量和轨迹点长度
开发语言·matlab
LucianaiB2 小时前
探索CSDN博客数据:使用Python爬虫技术
开发语言·爬虫·python
Ronin3052 小时前
11.vector的介绍及模拟实现
开发语言·c++
计算机学长大白3 小时前
C中设计不允许继承的类的实现方法是什么?
c语言·开发语言
PieroPc4 小时前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
2401_857439696 小时前
SSM 架构下 Vue 电脑测评系统:为电脑性能评估赋能
开发语言·php
SoraLuna7 小时前
「Mac畅玩鸿蒙与硬件47」UI互动应用篇24 - 虚拟音乐控制台
开发语言·macos·ui·华为·harmonyos
xlsw_7 小时前
java全栈day20--Web后端实战(Mybatis基础2)
java·开发语言·mybatis