python精简笔记

本文深入浅出地介绍了Python的基础语法,包括数据类型如列表、元组、字典的操作方法,流程控制语句如循环和条件判断,以及文件操作等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import random

#导入多个模块且模块内有同名功能.调用这个同名功能,调到的是后面导入的模块的功能
#一个模块文件中有`__all__`变量,当使用`from xxx import *`导入时,只能导入这个列表中的元素,对 ‘ import xxx ’ 这种方式无效
__all__=["name","age","func_name"]

# 单行注释


"""
多行注释,使用变量接收它就是字符串,不接收就是多行注释
"""

# name=input("这里面可以写输入提示语")
# num=random.randint(1,13)

name="zhangSan"
age=29
sex=None

#import到其他py不会被执行
if __name__=='__main__':
    print(5/2)    #2.5  直接除
    print(5//2)   #2    取整
    print(5%2)    #1    取余
    print(2**3)   #8    次方

print("姓名"+name,f"{age+1}","字符串不能和非字符串类型直接进行拼接")
message="这是个名字%s这是个年龄%s" %(name,age)   # %d %f


# for x in name:
for x in range(1,9,2):
    print(x,end='')
# continue结束就近当次循环,break结束就近循环


print(type("显示内容的数据类型"))


def func_name(x):
    global age  #全局变化
    age=200

ls=["str",13,13.5,[1,3]]
# ls.clear()
ls.append(1)
ls.append([1,2,3]) #整体加入
ls.extend([1,2,3]) #元素加入
ls.insert(2,4) #位置2插入4
del ls[0]
ls.pop(0) #不写从尾部删
ls.remove(2) #删除第一个元素2
ls.count(1) #里面有多少个1
ls.index(1) #第一个元素1所在位置 不存在就报错
len(ls)
ls[1:5:2] #起始,结尾,步长(可负[::-1]反转)取值      |列表,元组,字符串


#不可以修改元组的内容,但可以修改元组内list元素(增删改查反转等)

#字符串不可修改,操作都生成新字符串
name.index("a") #字符串所在开始位置
name.strip("ab") #前后a/b都去掉
name.count("it") #存在it个数

s=set()   #add remove pop随机取出  clear len
ss={1,2,3,4,5,2,1,3}
s.difference(ss) #取出差集
s.difference_update(ss)#s中删除和ss相同的元素,s被修改,ss不变
s.union(ss)


d=dict()  #d={}
dd={1:1,2:2}
#dd[key]=value  既是添加,又是更新
# kv可为任何类型,k不可为字典
#dd.pop(key)   clear  keys  len(dd)
for k in dd.keys():
    print(k,dd[k])


#len(容器) max(容器) min(容器)
#list(容器)  str(容器)  tuple(容器)  set(容器) 将容器转换为对应的类型
#list=sorted(容器)  对容器进行排序 返回list


#函数参数可传入函数,传递逻辑不传递计算
def multi_return(para="default",*paras,**kvparas):   #元组,字典
    return 1,2
x,y=multi_return()  #x1 y2



f=open("python.txt","r",encoding="UTF-8")
#read  write无则建,有则覆盖写  append无则建,有则追加

f.read()   #可给参数 读几个字节
f.readline() #一次读一行
f.readlines() #一次全读,一行一个,返回list
f.close()
for line in open("python.txt","r"):
    print(line)

#操作完会自动关闭
with open("python.txt","r") as f:
    f.readlines()

ff=open("python.txt","w",encoding="UTF-8")
ff.write("hello world")
ff.flush() #执行它才会真正的写入



try:
    print("可能出错的代码")
except Exception as e:
    print("有异常执行这里")
else:
    print("无异常执行这里")
finally:
    print("有无异常都要执行这里")











class Person:
    def __init__(self,name,age):
        self.name=name
        self.age=age

    #定义成员方法时必须有self,传参时可以忽略
    def eat(self,food):
        print(self.name+" eat "+food)


    def __str__(self):
        return self.name+self.age

    def __lt__(self, other):
        return self.age<other.age

    def __le__(self, other):
        return self.age<=other.age

    def __eq__(self, other):
        return self.age==other.age


    #名字以两个_为开头就是私有的,只能本类中用,子类和对象皆没有
    __private_val=None
    def __private_func(self):
        print("私有方法")



#可以多继承,如有同名成员,从左向右优先保留
class Man(Person,Person,Person):
    name="这是子类重写父类属性"  #super().变量/方法    只能在子类内调用父类的同名成员
    more_val="这是子类多加的属性"

    def speak(self):  #含有抽象方法的类为抽象类
        pass

#类型注解仅仅是提示性的 并不会纠错
vo=1  # type:int
v1:int=10
v2:str="abc"
v3:Person=Person("lisi",19)
v4:list=[1,2,3]
v5:tuple=(1,2,3)
v6:set={1,2,3}
v7:dict={1:2}
my_list:list[int]=[1,2,3]
my_tuple:[str,int,bool]=("abc",18,True)
my_set:set[int]={1,2,3}
my_dict:dict[int,int]={1:2}
def add(x:int,y:int)->int:
    return x+y

from typing import Union
my_list2:list[Union[str,int]]=[1,2,"abc"]
my_dict2:dict[str,Union[str,int]]={"name":"zhagnsan","age":31}
def ad(x:Union[int,str])->Union[int,str]:
    pass      #表示空,保证定义的完整性


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值