笔记-快速了解python基础

Python

列表

#列表
names=["xuefeng","jifeng","daofeng","tianjinfeng"]
print(names[0])
l1=names[1:3]#index从1到3 不包含3
l2=names[:3]#输出index为3以前所有的
l3=names[1:]#输出包括index为1以后的
print(l1)#['jifeng', 'daofeng']
print(l2)#['xuefeng', 'jifeng', 'daofeng']
print(l3)#['jifeng', 'daofeng', 'tianjinfeng']
names[1]="yingfeng"#修改
names.append("jifeng")#添加
names.insert(0,"guofeng")#插入
print(names)#['guofeng', 'xuefeng', 'yingfeng', 'daofeng', 'tianjinfeng', 'jifeng']
del(names[0])#删除
print(names)#['xuefeng', 'yingfeng', 'daofeng', 'tianjinfeng', 'jifeng']
del names[1]#删除
print(names)#['xuefeng', 'daofeng', 'tianjinfeng', 'jifeng']
names.remove("jifeng")#如果有相同的字段,则只会移除index小的那个字段
print(names)#['xuefeng', 'daofeng', 'tianjinfeng']

#列表 排序
print(names.pop(-2))#prp方法把数据弹出  daofeng
names.sort()#sort方法排序  对于字母先大写后小写 数字就按照大小  中文并没有排序
print(names)#['tianjinfeng', 'xuefeng']
names.sort(reverse=True)#设置为倒序排序 sort是永久排序 会对原列表进行改变
print(names)#['xuefeng', 'tianjinfeng']
newList=sorted(names)#sorted是临时排序 会返回一个列表 原列表并没改变
print(newList)#['tianjinfeng', 'xuefeng']
names.reverse()#reverse是对列表进行反转
print(names)#['tianjinfeng', 'xuefeng']
score=[1,2,3,4,5,6,7]
names.append(score)
print(names[2])#[1, 2, 3, 4, 5, 6, 7]
print(names.index("xuefeng"))#1查找指定名字的下标

#多维列表
names1=[ ["pekelimu","kailu","kekeluo"],["","",""],[] ]
print(names1[0][1])

#列表复制操作
##newList=newL[:]#修改newList的数据不影响newL
##newList2=newL#newList2和newL都指向相同的地址 修改newList2同时也改变newL

#列表合并
ll1=["pekelimu","kailu","kekeluo"]
ll2=["qiange","wang","fangxi"]
ll1.extend(ll2)
##ll1 +=ll2
print(ll1)#['pekelimu', 'kailu', 'kekeluo', 'qiange', 'wang', 'fangxi']

#数字列表
l=list(range(1,21,2))#range生成的数字只包含前面不包含后面的数字  list转换为列表
print(l)#[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
newL=[]
for t in range(1,11):
    newL.append(t**2)#转换为平方
print(newL)#[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
print(min(newL))#求最小数
print(max(newL))#求最大数
print(sum(newL))#求平均数
#列表与元组的区别
a=("pekelimu","kailu","kekeluo")#元组  不能修改 不能添加

循环

#循环
#for循环
##for name in names:
##    print(name)
for t in range(0,len(names1[0])):
    names1[0][t]=names1[0][t].upper()
    print(names1[0][t])
#猜数字游戏
##import random
##number=random.randint(1,20)
##for t in range(1,6):
##    print("输出数字")
##    n=int(input())
##    if n<number:
##        print("猜小了")
##    elif n>number:
##        print("猜大了")
##    else :
##        print("你猜对了")
##        break
    
#while循环
####he=0
####i=-1
####flag=True
####while flag:
####    i=int(input("请输入一个数字"))
####    he+=i
####    if i==0:
####        flage=False
####print(he)
#使用while循环遍历列表
####i=0
####len(l)-1
####while i<=len(l)-1:
####    print(l[i])#遍历此列表[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
####    i+=1
#使用while循环遍历字典
####d={'name':'xuefeng',
####      'age':12,
####      'gender':'gril',
####      'hobby':['唱','跳','rap','篮球']}
####i=0
####keyList=list(d.keys())
####while i<len(keyList):
####    key =keyList[i]
####    value=d[key]
####    print(key,value)#name xuefeng age 12 gender gril hobby ['唱', '跳', 'rap', '篮球']
####    i+=1
#判断素数
####n=int(input("请输入一个大于1的整数"))
####isSu=True
####for i in range(2,n):
####     if n%i==0:
####         isSu=False
####         break
####if isSu:
####    print(n,'是素数')
####else:
####    print(n,'不是素数')
#打印所有的水仙花数
flower=[]
for i in range(100,1000):
    ge=i%10
    bai=int(i/100)
    shi=int(i/10)%10
    if i ==(ge**3+bai**3+shi**3):
        flower.append(i)
print(flower)#[153, 370, 371, 407]

字典

#字典:键值对集合
stu1={'name':'xuefeng',
      'age':12,
      'gender':'gril',
      'hobby':['唱','跳','rap','篮球']}
print(stu1['hobby'][0])
stu1['rank']=3#添加
stu1['age']=11#改变
del stu1['rank']#删除
#列表字典嵌套列表
students= [ {'name':'xuefeng','age':12,'gender':'gril'},
                     {'name':'daofeng','age':12,'gender':'gril'},
                     {'name':'tianjinfeng','age':12,'gender':'gril'}]
print(students[1])
#遍历集合的键 值 和键值对
for k in stu1.keys():
    print(k,end='-')
for v in stu1.values():
    print(v,end='-')
print(stu1.items())
#访问键值对第一种方法
for i in stu1.items():
    print(i)#('name', 'xuefeng') 
    print(i[0],i[1],end='\n')#name xuefeng 访问键和值
#访问键值对第二种方法
for k,v in stu1.items():
    print(k,v)
#判断某个键和值是否包含在某个字典中
res='gender' not in stu1.keys()
print(res)#False
res ='gril' in stu1#默认判断键
print(res)#False
#设置字典中某个键的默认值,如果字典中这个键没有设置值则使用默认值,有的话就使用原本的值
stu1.setdefault('name','yingfeng')

方法

##位置参数 关键字参数  空字符''  空格字符' '
print('hello','world',sep='|')

#列表
##l=['xuefeng','daofeng','jifeng']
##def test(l):
##    del(l[1])
##test(l[:])

####可变参数
##def test(*n):
##    for i in n:
##        print(i)
##test(2,4,5)

####从模块中导入方法
##from test import test2 as t2,test1 as t1
##t1()
##t2()
##import test as t
##t.test1()
##t.test2()

#用递归来计算num的阶乘
def f(n):
    if n==1:
        return 1
    he=f(n-1)+n
    return he
print(f(5))

##def display_message():
##    print('python')
##display_message()
##def favorite_book(title):
##    print('喜欢的书'+title)
##favorite_book('撒')
##def make_shirt(size,mark):
##    print("尺码"+size+"字样"+mark)

##def make_album(name,album_name,count=0):
##    d={}
##    d['name']=name
##    d['album_name']=album_name
##    if count!=0:
##        d['count']=count
##    return d
##print(make_album('xuefeng','微软'))

###判断是否字符串 列表 元组中的每一个元素是否含有空内容
##def test(t):
##    isIncludeKong=False
##    for s in t:
##        if s.strip()=='':
##            isIncludeKong=True
##            break
##    return isIncludeKong
##print(test(['xuefeng','daofeng','jifeng']))

##def check(l):
##    while len(l)>2:
##        del(l[2])
##    return l
##l=[15,84,2,14,82,926,488]
##check(l)
##print(l)

##def test(l):
##    newL=[]
##    for i in range(0,len(l)):
##        if i%2==1:
##            newL.append(l[i])
##    return newL
##l=[1,2,3,4,5,6,7,8,9]
##print(test(l))#[2, 4, 6, 8]

def f(n):
    if n==1 or n==2:
        return 1
    res =f(n-1)+f(n-2)
    return res
print(f(3))

##class Dog():
##    # __init__
##    def __init__(self,name,age,color):
##        self.name=name
##        self.age=age
##        self.color=color
##    def sit(self):
##          print(self.name+"sit")
##    def roll_over(self):
##        print(self.name+"roll")
##dog1=Dog('灰灰',2,'black')
##dog2=Dog('黑黑',3,'white')

##class Car():
##    def __init__(self,make,model,year):
##        self.make=make
##        self.model=model
##        self.year=year
##        self.mileage=0
##    def describe(self):
##        print(self.year+' '+self.make+' '+self.model)
##    def get_mileage(self):
##        print("跑了"+str(self.mileage)+"公里")
##    def set_mileage(self,mileage):
##        if self.mileage<mileage:
##            self.mileage=mileage
##car1=Car("上海大众",'K1','2010')
##car1.describe()
##car1.set_mileage(500)
##car1.get_mileage()


class Person():
    def __init__(self,name,age,gender):
        self.name=name
        self.age=age
        self.gender=gender
    def personInfo(self):
        print("name:"+self.name+"age:"+self.age+"gender:"+self.gender)
#继承
class Student(Person):
    def __init__(self,name,age,gender,college,grade):
        super().__init__(name,age,gender)
        self.college=college
        self.grade=grade
    def personInfo(self):
        super().personInfo()
        print("college:"+self.college+"grade:"+self.grade)
    def study(self,Teacher):
        Teacher.teach_obj()
        print( Teacher.name+"老师 我终于学废了")
        
class Teacher(Person):
    def __init__(self,name,age,gender,college,professional):
        super().__init__(name,age,gender)#调用父类里的初始方法
        self.college=college
        self.professional=professional
    def __str__(self):
        return self.name+' '+str(self.age)+' '+self.gender+' '+self.college+' '+self.professional
    def personInfo(self):
        super().personInfo()
        print("college:"+self.college+"professional:"+self.professional)
    def teach_obj(self):
        print("今天讲了如何面对对象设计程序")
    
        
##p1=Person('岛风',"12",'女')
##p1.personInfo()
stu1=Student("雪风","12","女","设计学院","2班")
stu1.personInfo()
t=Teacher('托尼',"20",'男',"设计学院","美发")
t.personInfo()
stu1.study(t)
print(t)

文件

import os
print(os.getcwd())

##with open('Game.txt','r') as file:
##    content=file.read()#读取整个文件
##    print(content)
##    print("++++++++")
##    for line in file:
##        print(line.rstrip())

#w是覆盖  a是追加
with open('Game.txt','a') as file:
    file.write('\nwww.sikiedu.com')

try:
    print(9/0)
except ZeroDivisionError:
    print('代码出现异常')
else:
    print('未出现别的错误')
print('end')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值