note哈哈

# # 变量定义
# # 1.简单定义
# # 变量名=值
# # 2.多元定义
# # 变量名1,变量名2,,,,=值1,值2,,,,,
# # 3.链式定义
# # 变量1=变量2=变量3=
# # a=b=c=10   print(a,b,c)
#
# print(0b10) #2进制,标志是0b
# print(0o10) #8进制,标志是0o
# print(10)
# print(0x10) #16进制,标志是0x
# # 字符串
# # 编码 ASCII GBK GB2312 unicode UTF-8
# # 被引号包含的为字符串
# #切片 string[start:end:step]
string='杳杳寒山道' #例子
print(string[0:3])
# #字符串前缀 r f  语法r'太原理工大学' f'太原理工大学'
# # r后面的字符串都为普通字符串   f支持格式化字符串
# #转义字符  \n换行 \r回车 \t制表符
name='王腾达'
age='19'
print(name+'的年龄是'+age) #与下面的类似
print(f'{name}的年龄是{age}') #大括号中间可以填变量
#
#
#
# # input() 返回的数据类型是字符串
# # 占位符 %s(字符串占位符)  %f(浮点型占位符)
name='小白'
age=18
str1='我的名字是%s,我年龄%s,我有%f钱'
print(str1%(name,age,100)) #例子
print(f'我的名字是{name},我年龄{age}') #用f做


###第二天
# boool 布尔类型(Ture|False)        None类型
# 列表类型 (list)           定义:用来存储一系列相关数据的集合
xmcj =[ 66,67,87,78,78]#例子
# # 列表注意事项:1.可以存储任意类型的数据
# # 1.访问列表
# print(xmcj[2])
# # 2.增加列表哦
#    (1)append(value) 把value追加到列表最后      #用法 列表名.appeng[value]
#    (2)insert(index,value)  把value插入到index位置 index为下标     #用法 列表名.insert
# #3.删除列表
# del.列表名[index]
# #4.修改
# xmcj[index]=78   #用法列表名+[index]=要改的数值
# #5.列表长度
# len()

arr1 = [1,2,3,4,5,[6,7,8,9]] #二维列表
print(arr1[-1][-2])  #访问上面的二维列表倒数第一个表格中的倒数第一个数
# 元组类型(tuple) 定义:不可变的列表
# 语法:
t1=(1,2,3,3)
#字典类型(dict)
di={'name':'小白','age':18,'sex':''}
print(di['name'])  #读取
del di['sex']  #删除
print(di)
di['name']='小红'  #修改
print(di)
di['tel']=2414 #增加
print(di)
#集合类型(set)
s1={1,2,3,4,44,4,4,4,4} #集合中的每个元素有唯一性
s2={3,4,5}

#数据类型 (数字(int float).str,bool,None,list,tuple,dict,set)
# 常用:int(),float(),str(),bool()
# 不常用:list(),set(),dict(),tuple()
# #运算符 +-*/ %(取余)
# +* 可以才做数字,字符串,列表,元组

# 关系运算符
#>>=<<   !=in  not in is isnot

# #流程控制
# num=int(input('请输入一个数:'))
# #单路分支
# if num<10:
#     print('垃圾')
# print('大垃圾')
#双路分支

#循环语句
#for while
#for 变量名 in 序列:
    #循环体

#创建序列的函数
  #range(end)    range(10) 产生0-9的一个序列
print(list(range(10))) #把0-9的序列转化为列表再打印出来
# range(start,end)  range(10,20) 产生10-19的序列
# range(start,end,step) range(0,20,2)  产生0-20 的偶数

for i in range(10):
    print("123")
# range for 语法基础上,
#     1.循环输出0-100的偶数和奇数
for x in range(0,101,2):#偶数
    print(x)
for x in range(1,101,2):#奇数
    print(x)

#利用for循坏 对arr1进行遍历
arr1=[1,2,3,4,5,6,7,8,9]
for item in arr1:
    print(item)

for i in range(5):#打印行
    print('寒山道'*5) #打印列
for i in range(5):
    for j in range(10):
        print('*',end='') #end是使连续
    print('')#换行

for i in range(5):
    for j in range(i+1):
        print('',end='')
    print('')

for i in range(5):
    print(''*(i+1))

for i in range(5):
    print(''*(i+1))

for i in range(1,6):
    for j in range(0,6-i):
        print('',end='')
    print('')

for i in range(1,6):
    print(''*(6-i))

for i in range(1,6):
    for x in range(5-i):
        print('  ',end='')
    for j in range(i):
        print('',end='')
    print('')

for i in range(1,6):
    print(' '*(5-i)+'*'*i)

#J九九乘法表
for i in range(1,10):
    for j in range(1,i+1):
        print(f'{j}*{i}={i*j} ',end='')
    print('')
#
# 干预循环:
# break 退出循环
# # continue 退出本次循环,进行下一次循环
# arr = [1,2,3,4,5,6]
# for i in arr:
#     # if i == 3:
#     #     break
#         # continue
#     print(i)
#
# # while循环
# # 语法:
# # while 表达式:
# #     循环体
#
# # 猜数字
# # num1 = 100
# # num = int(input('请输入一个数:'))
# # while num!=num1:
# #     num = int(input('重来:'))
# # print('nb')
# # import random
# # num1=random.randint(1,100)
# #
# # while True:
# #     num = int(input('请输入一个1-100的数字:'))
# #     if num<num1:
# #         print('太小')
# #     elif num>num1:
# #         print('太大')
# #     else:
# #         print('ok')
# #         break
#
# # wihle(0-100偶数)
# num=0
# while num<=100:
#     if num%2==0:
#         print(num)
#     num+=1
#
# row=1
# while row<3:
#     col=1
#     sp=1
#
#
#
# #函数 定义:封装一个特定功能的代码块以便重复利用
# #语法
# # 调用函数
# # 函数名(实参)
# '''
# def 函数名(形参):
#     函数体
#     【返回值】
# '''
def add(a,b):
    print(a+b)


add(10,20)

def sanjx(num):
    for i in range(1,num+1):
        print('*'*i)

sanjx(5)

'''
用法:
必选参数
默认参数
可变参数
关键字参数
'''
#可变参数
def sum(*b):
    res=0
    for i in b:
        res+=i
    print(res)
sum(1,2,3,4,5)


#关键字参数
def fn(**info):
    print(info)
fn(name='小白',sex='',age=18)

#返回值:终止函数and给函数一个返回值以便再函数外部使用

# 高阶函数
'''
函数的返回值或实参使另外一个函数,这个函数就成为高阶函数 #定义 
分类:
返回值高阶函数
实参高阶函数
'''
# 闭包
# 递归

def fn(a,b):
    return a*b
def c(a,b,fn):
    res=fn(a,b)
    print(res)
c(2,5,fn) #实参高阶函数


def fun():
    def newfun():
        print('hahah')
    return newfun

newfun=fun
newfun()

#闭包
#定义:两个嵌套关系的函数,内层函数使用外层的变量,在全局中调用内层函数,此刻形成了闭包


#作用域
#全局作用域 局部作用域

#递归
#自己调用自己

def jiec(num):
    if num==1:
        return 1
    return num*jiec(num-1)
print(jiec(3))







string1='山西/太原/小店'
print(string1.split("/"))
#面向过程 用函数实现
###面向对象
# 类 对象(实例)

#人类
# class Person:
#     def __init__(self):#构造函数,在实例化对象时自动调用    self里面放的是属性
#         self.name = 'hsd'
#         self.sex = ''
#         self.age = ''
#     def cry(self):
#         print(f'{self.name}在哭')
#
#
# hsd = Person()
# hsd.name= "小明"
# hsd.cry()
class Person:
    name = ''
    sex = ''
    age = ""
    def cry(self):
        print(f'{self.name}在哭')

q1=Person()
q1.name='lalala'
q1.cry()
import time
class Clock:
    def __init__(self,h,m,s):
        self.h = h
        self.m = m
        self.s = s
    def run(self):
        while True:
            self.s+=1
            if self.s>=60:
                self.m+=1
                self.s=0
                if self.m>=60:
                    self.h+=1
                    self.m=0
                    if self.h>=24:
                        self.h=0
            time.sleep(1)
            print('%0.2d:%0.2d:%0.2d'%(self.h,self.m,self.s))

c1=Clock(17,48,49)
c1.run()

 

posted @ 2019-07-12 15:46  杳杳寒山道  阅读(176)  评论(0)    收藏  举报