python常用语法2
2021/8/1 14:06:07
本文主要是介绍python常用语法2,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Pycharm格式化代码方式
选择工具栏的Code, 点击Reformat Code
或者使用快键键
Mac为:Command + Option+L windows: Alt + ctrl + L
Python判断两个list相等
Python2可以使用cmp()函数,但是在Python3中我们可以使用下面的方法来比较两个list是否相等
import operator a=[1,-1,0] b=[1,-1,0] c=[-1,1,0] print(operator.eq(a,b)) # True print(operator.eq(a,c)) # False
注意: 两个列表必须完全相同(包括位置),只有这样才能是True。
参考:Python判断两个list相等
python合并两个列表
直接使用‘+’运算符
a = [1, 2] b = [1,2] print(a + b) # [1, 2, 1, 2]
python - 从另一个列表中删除出现在一个列表中的所有元素
l3 = [x for x in l1 if x not in l2]
等价于
l1 = [1, 2, 3, 4, 5, 6] l2 = [3, 4, 6] l3 = [] for num in l1: if num not in l2: l3.append(num) print(l3) # [1, 2, 5]
参考: python 根据一个list的元素删除另一个list中对应的元素、python - 从另一个列表中删除出现在一个列表中的所有元素
list列表排序
sort () 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。
语法
sort()方法语法:默认按字典序排序
list.sort(cmp=None, key=None, reverse=False)
参数
- cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
- key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
- reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
参考:https://www.runoob.com/python/att-list-sort.html
python怎么往一个元祖里添加一个字符串
现将字符串用括号括起来,加个逗号,让这个字符串变成一个元祖,然后使用‘+’运算符相加即可。方法可推广到将任何类型的对象添加到某个元祖。
total_records += record + ('test', )
元祖合并
两个一维元祖怎么合并
直接用'+'运算符拼接即可
a = (1, 2, 3) b = (4, 5, 6) c = a + b # c = (1, 2, 3, 4, 5, 6)
怎么将一维元祖以整体的形式加入到一个二维元祖
在一层元祖外面套一层括号后,加一个逗号
a = ((1, 2, 3), (4, 5, 6)) b = (7, 8, 9) c = a + (b, ) # c = ((1, 2, 3), (4, 5, 6), (7, 8, 9))
怎么将一维元祖的每个元素分别加入到一个二维元祖
直接用'+'运算符拼接即可
a = ((1, 2, 3), (4, 5, 6)) b = (7, 8, 9) c = a + b # c = ((1, 2, 3), (4, 5, 6), 7, 8, 9)
不确定某个变量是一维元祖还是二维元祖,怎么将它以二维元祖的形式加入到另一个二维元祖
先判断该变量的第0项是否是元祖,如果是元祖则该变量是二维元祖,否则是一维元祖,如果是一维元祖,则在一层元祖外面套一层括号后,加一个逗号,与二维元祖相加;如果是二维元祖,直接相加
records = ((1, 2), (3, 4)) if isinstance(aa, tuple): # 如果第一项是元祖则说明aa是二维元祖 records += aa else: records += (aa, )
python遍历文件夹下的所有文件
listdir(path)函数,可以获得path路径下的所有文件列表
import os def getfiles(): filenames=os.listdir(r'E:\test') print(filenames)
参考:python遍历文件夹下的所有文件
python文件的读写
open(filepath, mode), 这个函数可以用来读写文件,返回文件的操作句柄,mode就是'w', 'r', 'a', 'w+', 'a+'等模式
fr = open('test.txt','r') for line in fr: print line fr.close() fw = open('test2.txt','w') fw.write("hello world\nhello world!!") # 换行需要自己加入'\n'字符,没有直接写入一行的函数 fw.close()
参考: Python 文件I/O、python每次读取文件一行输出一行
python config文件的读写
1、设置配置文件
[mysql] host = 1234 port = 3306 user = root password = Zhsy08241128 database = leartd
2、读取配置文件
import configparser import os conf= configparser.ConfigParser() def readConf(): '''读取配置文件''' root_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) conf.read(root_path + '/ceshi/conf/app.conf') # 文件路径 print(conf) name = conf.get("mysql", "host") # 获取指定section 的option值 print(name)
3、写入配置文件
def writeConf(): '''写入配置文件''' root_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) conf.read(root_path + '/ceshi/conf/app.conf') # 文件路径 conf.set("mysql", "host", "1234") # 修改指定section 的option conf.write(open(root_path + '/ceshi/conf/app.conf', 'w'))
参考:python config文件的读写、如何在python中读取配置文件
对时间的比较
两个datetime对象直接做差,得到一个timedelta对象, 通过这个对象的seconds获得秒钟数,从而与目标时间进行比较
start = datetime.datetime(2021, 3, 31, 18, 0, 0) end = datetime.datetime(2021, 3, 31, 21, 0, 0) interval = end - sta rt print(interval.seconds) print(interval.seconds >= 3600*3) # 判断两个时间差是否超过半小时
参考:【Python】datetime间的比较
datetime.timedelta怎么格式化输出
import datetime start = datetime.datetime(2009,2,10,14,00) end = datetime.datetime(2009,2,10,16,00) delta = end-start print(str(delta)) # prints 2:00:00
如果直接使用str()函数后结果带有毫秒值,如'02:10:00.324', 如果想要去除毫秒值,使用split()函数截取后取第一个元素
print(str(interval).split(".")[0])
参考:python – 将timedelta格式化为字符串
字符串split()函数
split()函数
语法:str.split(str=”“,num=string.count(str))[n]
参数说明:
str: 表示为分隔符,默认为空格,但是不能为空(”)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素 num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量 [n]: 表示选取第n个分片,也可以是[0,n]表示选取第0片到第n片,函数返回一个list。
参考:Python分割字符串split()
把元素添加到不重复的list中
使用set()这个数据结构,可以保证存入的对象不重复,后面如果需要是list对象,使用list()方法强转即可。
item = set() item.add(1) item.add(1) item = list(item) print(item) # [1]
参考: https://www.cnpython.com/qa/35356
Python time sleep()方法
time.sleep(t) , t 是 推迟执行的秒数。
import time time.sleep( 5 )
参考: Python time sleep()方法
python获取对象类型
type()方法
var = dict() print(type(var)) # <class 'dict'>
list或者set截取片段
变量[头下标:尾下标:步长]
步长省略则默认为1
参考:python列表list的截取问题
python获取当前路径
print(os.path.abspath(__file__)) print(os.path.dirname(os.path.abspath(__file__))) print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
python判断输入的内容是否为整数
num = input("请输入整数:") print(num.isdigit())
参考: python 判断输入是否为整数的程序
python判断一个浮点数是否可转换为整数
方式一:使用is_integer()函数
num = 4.0 num2 = 4.01 print(num.is_integer()) # True print(num2.is_integer()) # False
方式二:与1做取余运算
num = 4.0 num2 = 4.01 num3 = 0.0 print(num % 1 == 0) # True print(num2 % 1 == 0) # False print(num3 % 1 == 0) # True
参考: python 如何判断一个数为整数?(判断整数,没有小数)(取余)判断整型 isinstance()
python判断某个变量是否是某种类型
isinstance()
print(isinstance(1,int)) # 判断1是否是int类型 print(isinstance(aa, datetime.datetime)) # 判断aa变量是否是datetime.datatime类型
这篇关于python常用语法2的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器