赞
踩
Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

pip install SomePackage # 最新版本
pip install SomePackage==1.0.4 # 指定版本
pip install 'SomePackage>=1.0.4' # 最小版本
| and | exec | not | assert | finally | or |
|---|---|---|---|---|---|
| break | for | pass | class | from | |
| continue | global | raise | def | if | return |
| del | import | try | elif | in | while |
| else | is | with | except | lambda | yield |


# 注释内容
Python 使用三个连续的单引号'''或者三个连续的双引号"""注释多行内容,如:
'''
注释内容
'''
"""
注释内容
"""
print(*objects, sep=' ', end='\n', file=sys.stdout)
#如果直接输出字符串,而不是用对象表示的话,可以不使用逗号
print("Duan""Yixuan")
print("Duan","Yixuan")
运行结果如下:
DuanYixuan
Duan Yixuan
可知,不添加逗号分隔符,字符串之间没有间隔
print(r'\hello word')
# \hello word


p=3.141592653
print('%+3.1f'%p)
# +3.1
p=3.141592653
print('%010.1f'%p)
# 00000003.1
p=3.141592653
print('%-3.1f'%p)
#3.1
| 格式符 | 格式符输出 | 格式符 | 格式符输出 |
|---|---|---|---|
| %s | 字符串输出 | %r | 字符串输出 |
| %c | 单个字符输出 | %b | 二进制整数输出 |
| %d | 十进制整数输出 | %i | 十进制整数 |
| %o | 八进制整数输出 | %x | 十六进制整数输出 |
| %e | 指数输出(e为基底) | %E | 上同(E为基底) |
| %f | 浮点数 | %F | 浮点数 |
| %g | 指数(e)或浮点数(根据显示长度) | %G | 指数(E)或浮点数(根据显示长度) |

input('请输入:')
# 请输入:
a,b,c=input('请输入:').split(',')
# 录入多个数且用逗号隔开
a,b,c=map(int,input('请输入:').split(','))
# 这样就可以把所有数转换为int类型


# -*- coding: utf-8 -*- # python 3.x # Filename:const.py # 定义一个常量类实现常量的功能 # # 该类定义了一个方法__setattr()__,和一个异常ConstError, ConstError类继承 # 自类TypeError. 通过调用类自带的字典__dict__, 判断定义的常量是否包含在字典 # 中。如果字典中包含此变量,将抛出异常,否则,给新创建的常量赋值。 # 最后两行代码的作用是把const类注册到sys.modules这个全局字典中。 class _const: class ConstError(TypeError):pass def __setattr__(self,name,value): if name in self.__dict__: raise self.ConstError("Can't rebind const (%s)" %name) self.__dict__[name]=value import sys sys.modules[__name__]=_const()
# test.py
import const
const.PI=3.14
print(const.PI)
| 类型 | 类型名 | 实例 |
|---|---|---|
| 整数类型 | int | 88 |
| 浮点类型 | float | 3.123 |
| 布尔类型 | bool | True,False |
| 字符串类型 | str | ‘人生苦短,我用python’ |
| 空值 | None | None |





c='123'
print(int(c,16))
#291
| 算术运算符 | 赋值运算符 | 比较运算符 |
|---|---|---|
| 布尔运算符 | 位运算符 |




| False | 数值0 | None | 空字符串 |
|---|---|---|---|
| 空列表 | 空元组 | 空字典 | 空字典 |
# 与c不一样,c不能连续比较
if 90<=score<=100
if 100>90:
print('小于')
else:
print('大于')

print(100 if 100>90 else 90)
# 输出100
# if判断条件为True输出前面,否则输出后面


i=0
while i<5:
print(i)
i+=1
# 0 1 2 3 4

for i in range(3):
print(i)
# 0 1 2
for _ in range(3):
print('人生苦短,我用python')




r=[12,"i"]
print(r)
# [12, 'i']
r=list('1234')
print(r)
# ['1', '2', '3', '4']


l=[1,2,3]
print(l.index(1))
# 0

l=[1,2,3]
print(l[1:])
# [2, 3]
列表查询与遍历

l=[1,2,3]
print(1 in l)
# True
列表的增加操作

l=[1,2,3]
# 在末尾加一个元素
l.append(4)
print(l)
# 在末尾加任意多元素,参数为列表
l.extend([5,6])
print(l)
# 在第6个位置加上一个7元素
l.insert(6,7)
print(l)
# 切片,把切出去的部分用新列表替换
l[1:]=[8]
print(l)
列表的删除

l=[1,1,2,3] # 删除1元素 l.remove(1) print(l) # 删除第0个元素,若不指定则删除最后一个元素 l.pop(0) print(l) # 切片出第0个到第1个元素 print(l[0:1]) # 清除全部元素 l.clear() print(l) # 删除列表 del(l) print(l) 23 # [1, 2, 3] # [2, 3] # [2] # [] # 报错,没有l变量
列表的排序

l=[3,2,1]
# 不会产生新对象
l.sort()
print(l)
# 会产生新对象
r=sorted(l)
print(l)
列表生成式
# 生成一个1-9元素的列表
lst=[i for i in range(1,10)]



s={"张三":100}
t=s["张三"]
print(t)
# 设置默认查找值,当查字典没有的元素时返回默认值
t=s.get("lisi",99)
print(t)
#100
#99



s={"张三":100}
# 获取所有key
print(s.keys())
# 获取所有值
print(s.values())
# 获取所有键值对
print(s.items())
#dict_keys(['张三'])
# dict_values([100])
# dict_items([('张三', 100)])
s={"张三":100}
# item 获取的是key
# s[item]获取值
for item in s:
print(item)
print(s[item])
s=[1,2,3]
t=[4,5]
print({s: t for s, t in zip(s, t)})


t=1,2,3,4
for i in t:
print(i)


s={1,2,3} # 末尾增加一个元素 s.add(4) print(s) # 末尾至少增加一个元素 s.update([5]) print(s) # 删除一个指定元素 s.remove(2) print(s) # 删除一个指定元素 s.discard(1) print(s) # 一次删除头部一个元素 s.pop() print(s) # 清空元素 s.clear()

s={1,2,3,4}
t={3,4}
# 判断集合是否相等
print(s==t)
# 判断集合t是否是集合s的子集
print(t.issubset(s))
# 判断集合s的父集是否是t
print(s.issuperset(t))
# 判断两个集合是否是没有交集
print(s.isdisjoint(t))
#False
#True
#True
#False

s={1,2,3,4} t={3,4,5,6} # 集合的交集 print(s.intersection(t)) print(s&t) # 集合的并集 print(s.union(t)) print(s|t) # 集合的差集 print(s.difference(t)) print(s-t) # 集合的对称差集 print(s.symmetric_difference(t)) print(s^t)

print({i for i in range(1,10)})




s='python人生苦短,我用python'
# 查找子串第一次出现的位置,无子串报错
print(s.index('python'))
# 查找子串最后一次出现的位置,无子串报错
print(s.rindex('python'))
# 查找子串第一次出现的位置,无子串返回-1
print(s.find('python'))
# 查找子串最后一次出现的位置,无子串返回-1
print(s.rfind('python'))
#0
#13
#0
#13

s='人生苦短python,我用Python' # 全部字符转换为大写 print(s.upper()) # 全部字符转换为小写 print(s.lower()) # 大写转小写,小写转大写 print(s.swapcase()) # 第一个字符转换为大写,其他字符转换为小写 print(s.capitalize()) # 把每个单词第一个字母大写,其他为小写 print(s.title()) # 人生苦短PYTHON,我用PYTHON # 人生苦短python,我用python # 人生苦短PYTHON,我用pYTHON # 人生苦短python,我用python # 人生苦短Python,我用Python

s='人生苦短python,我用Python'
# 居中
print(s.center(48))
# 右对齐
print(s.rjust(48))
# 左对齐
print(s.ljust(48))
# 右对齐
print(s.zfill(48))


s='hello,world '
print(s.split(sep=',',maxsplit=1))
# ['hello', 'world ']

s='hello2022' # 判断是否为合法的标识符 print(s.isidentifier()) # 判断是否全由空白字符组成 print(s.isspace()) # 判断是否全为字母 print(s.isalpha()) # 判断是否全为十进制数字 print(s.isdecimal()) # 判断是否全为数字 print(s.isnumeric()) # 判断是否全为字母和数字 print(s.isalnum()) #True #False #False #False #False #True

s='hello2022'
lst=["1,2,3",'木头人']
# 将指定子串替换
print(s.replace('2','1'))
# 在每两个列表元素中间加一个字符串
print(s.join(lst))
# hello1011
# 1,2,3hello2022木头人

s='hello2022'
r='H'
print(s>r)
print(s>=r)
print(s<r)
print(s<=r)
print(s==r)
print(s!=r)
# True
# True
# False
# False
# False
# True
s='天涯共此时'
# 编码
print(s.encode(encoding='GBK'))
print(s.encode(encoding='UTF-8'))
# 解码
r=s.encode(encoding='GBK')
print(r.decode(encoding='GBK'))
# b'\xcc\xec\xd1\xc4\xb9\xb2\xb4\xcb\xca\xb1'
# b'\xe5\xa4\xa9\xe6\xb6\xaf\xe5\x85\xb1\xe6\xad\xa4\xe6\x97\xb6'
# 天涯共此时
def 函数名(输入参数):
函数体
[return xxx]






if 0<=score<=100:
print('分数为:',score)
else:
raise Exception('分数不正确')




class Student: def __init__(self,name,age): self.name=name self.age=age def show(self): print('我是{},今年{}'.format(self.name,self.age)) def show(): print('我是函数') stu=Student('李磊',20) stu.show() stu.show=show stu.show() #我是李磊,今年20 #我是函数


class A:
__place="吉林"
# 列出A中所有属性
print(dir(A))
print(A._A__place)
# ['_A__place']
# 吉林

class A:
pass
class B:
pass
# 继承A,B类
class C(A,B):
pass



class C:
pass
class B(C):
pass
class A(B,C):
pass
a=A()
print(a.__class__)# <class '__main__.A'> 输出对象所属类
print(A.__base__)#<class 'object'> 输出类的基类
print(A.__bases__)# (<class '__main__.B'>, <class '__main__.C'>) 输出所有父类
print(A.__mro__)#(<class '__main__.A'>, <class '__main__.B'>, <class '__main__.C'>, <class 'object'>) 输出基础层次
print(C.__subclasses__())# [<class '__main__.B'>, <class '__main__.A'>] 输出所有子类的列表





import copy class CPU: pass class Disk: pass class Computer: def __init__(self,Disk,CPU): self.Disk=Disk self.CPU=CPU disk=Disk() cpu=CPU() a=Computer(disk,cpu) b=copy.copy(a) print(a,a.Disk,a.CPU) print(b,b.Disk,b.CPU) # <__main__.Computer object at 0x016B0A18> <__main__.Disk object at 0x00ACE580> <__main__.CPU object at 0x00A9AF40> # <__main__.Computer object at 0x016F4310> <__main__.Disk object at 0x00ACE580> <__main__.CPU object at 0x00A9AF40>









file=open(file,mode='r',encoding='gbk')


with open('a.txt','r) as file:
print(file.read())



| 函数 | 作用 |
|---|---|
| re。findall(“正则表达式”,“字符串”) | 拿到列表 |
| re.search | 拿到第一个结果就返回,返回一个match对象,要输出match对象的话要用到group方法 |
| re.finditer | 把拿到的对象全放到迭代器里,也是match对象,结果比较大就用这个 |
def func(fn):
def inner():
print('fn进来了')
fn()
print('fn出去了')
return 'f'
return inner






def order():
lst=[]
for i in range(100):
lst.append(f"衣服{i}")
if len(lst)==3:
yield lst
lst=[]
gen=order()
print(gen.__next__())
print(gen.__next__())
# ['衣服0', '衣服1', '衣服2']
# ['衣服3', '衣服4', '衣服5']

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。