Python语法学习

Python语法学习,第1张

Python语法学习 Python基础学习

小白的学习笔记(来自北理工mooc)

python基本数据类型 基本语法元素
  • 缩进、注释、命名、保留字、变量
  • 数据类型、字符串、整数、浮点数、列表
  • 赋值语句、分支语句、函数
  • input、print、eval、print格式化
Python基本图形绘制
  • 海龟绘图体系及import保留字用法
  • penup()、circle()、pensize()、pencolor()
  • fd()、circle()、seth()
  • 循环语句:for、in、range
数字类型级 *** 作 整数类型(四种进制 十、二、八、十六) 浮点数类型
浮点类数间的运算存在不确定尾数,不是bug 
取值范围在约为$-10^{307}$到^{308}$
一般不确定尾数在^{-16}$
浮点数可以采用科学计数法表示,例如.3e-3$为0.0043
复数类型
z.real 获得实部
z.imag 获得虚部
数值运算 *** 作符
加 x+y
减,x-y
乘,x*y
除,x/y
整数除,x//y,例如下面结果为3
x = 10
y = 3
print(x//y)
  +x,x本身
  -y,y的负值
  x%y,取余
  x**y,幂运算
  x op y ,二元 *** 作符
 例:x+=y,x-=y,x*=y,x/=y,x//=y,x%=y,x**=y
数值运算函数
	数字类型扩展关系:整数->浮点数->复数
    例如:123 + 4.0 = 127.0(整数+浮点数=浮点数)
pow(x,y[,z])==x**y%z
abs(x)                  取x的绝对值
divmod(x,y)             商余,(x//y,x%y)二元数同时输出商和余,divmod(10,0)
round(x[,d])            保留d位小数(默认为0取整)
max(x1,x2,x3,...,xn)    返回最大值
min(x1,x2,x3,...,xn)    返回最小值
int(x)                  转为整数
float(x)                转为浮点数
complex(x)              转为复数
"""
代码——天天向上的力量
#daydayup	天天向上的力量
def dayup(df):
    dayup = 1
    for i in range(365):
        if i%7 in [6,0]:
            dayup = dayup*(1-0.01)
        else:
            dayup = dayup*(1+df)
    return dayup
dayfactor = 0.01
while dayup(dayfactor) < 37.78:
    dayfactor+=0.001
print("{:.3f}".format(dayfactor))
字符串类型 *** 作 字符串的序号
正向递增序号:0 1 2 3 4 5 6 7 8 9 10 11
反向递减序号:-11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
字符串的使用 “” 和 ‘’
两个类型,四种 *** 作
字符串切片的高级用法
<字符串>[M:N:K],开始为序号为M位置的字符,结束于序号为N的字符,根据步长k对字符串切片
转意符 的用法 字符串 *** 作符
x+y          字符串连接
n*x或x*n     字符串复制n次
x in s       判断x是否是s的字串
字符串处理函数
len(x)      计算字符串长度
str(x)      转为字符串
eval(x)     字符串转为数字
hex(x)      转为十六进制
oct(x)      转为八进制
Unicode		
chr(x)      数字转字符
ord(x)      字符转数字
字符串处理方法
str.lower()          大写转为小写      #"AbCDefG".lower结果为abcdefg
str.upper()          小写转为大写
str.split(sep=None)  返回一个列表,由str根据sep分隔的部	分组成         #"A,B,cd".split(,)结果为['A','B','cd']
str.count(sub)       返回字串sub在str中出现的次数"an apple a day".count("a")结果为4
str.replace(old,new) 返回字符串str副本,所以old字串被替换为new"python".replace("n","n123.io")
str.center(width[,fillchar])    居中字符串           
"python".center(20,"=")         结果为=======python==========一共20个字符
str.strip(chars)                去除字符串两侧出现的char中列举的字符
str.join(iter)                   给iter中的每一个元素增加之间增加一个str#主要用于字符串的分隔
字符串处理例子
n = "requit"
s="aaaebcdfhi"
x="bcdf"
number = 123
str_number = "123456"
str_sig = "我"

print((n+" ")*5);
print(x in s)
print(len(x))
print(str(number))
print(eval(str_number))
print(oct(number),hex(number),chr(number),ord(str_sig))

print("AbCDefG".lower())
print("an apple a day".count("a"))
print("python".replace("n","n.123"))
print("python".center(20,'+'))
print("aasuiuiaas".strip("aas"))
print(",".join("12345"))

字符串类型格式化 槽机制 format方法的格式控制
{槽位:<填充><对齐><宽度><,><.精度><类型>}
{0:=<20, .3f%}
填充:单个字符
对其:左对齐< ,右对齐>,居中^
宽度:数字number 20
,:  数字的千位分隔符
精度:浮点数小数精度或字符串输出最大长度
类型:整数类型 吧b,c,d,o,x,X。浮点数类型  e,E,F,%
例如:{0:=^20, .3%}  表示第0个槽用=符号填充20位并将符号居中	保留两位小数以浮点数百分比表示
海龟绘图之一只小蛇
"""
作者:Twivi
日期:2021年11月23
"""
#PythonDraw
import turtle                     #海龟库(turtle库)turtle绘图体系##可以避免函数名冲突
#from turtle import*              #可以省略库名
#imort turtle as t                #更改库名为t
#t.setup
turtle.setup(600,400,200,200)     #控制窗体位置和大小长宽,X,Y。屏幕左上角为0,0
turtle.penup()                    #画笔控制,海龟在飞
turtle.fd(-250)                   #fd正前方向运动绘图,bk表示反方向运动绘图
turtle.pendown()                  #画笔控制,海龟在地上
turtle.pensize(25)                #画笔控制,画笔宽度
turtle.pencolor("purple")         #画笔控制,画笔颜色,,,,RGB颜色turtle.pencolor(0.63,0.13,0.94)
turtle.seth(-40)                  #改变行进角度,seth(绝对度数)turtle.right()相对角度“左”
for i in range(4):                #range(N)产生0到N-1的整数计数序列,共N个.......range(M,N)产生M到N-1的整数序列N-M个
    turtle.circle(40,80)          #turtle左侧画圆circle(r,angle)半径和弧度
    turtle.circle(-40,80)         #右侧
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40* 2/3)
turtle.done()                     #程序完成后不会自动退出窗体

"""
一、以空间为原点的空间坐标系:绝对坐标与海龟坐标
二、以空间x轴为0度的角度坐标系:绝对角度和海龟角度
三、turtle.colormode(mode) RGB色彩模式
1.0位:RGB小数值模式
255:RGB整数值模式
"""
文本进度条(使用增长曲线( x + ( 1 − x ) / 2 ) 8 x+(1-x)/2)^8 x+(1−x)/2)8)
"""
作者:Twivi
日期:2021年11月27
"""
import time
scale = 100
print("执行开始".center(scale//2,"-"))
start = time.perf_counter()
for i in range (scale+1):
    y = int((((i+(1-i)/2)**8)/((100+(1-100)/2)**8))*100)
    a = '*' * y
    b = '.' * ( y- i)
    c=(i/scale)*100
    dur = time.perf_counter()-start
    print("r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end="")
    time.sleep(0.5)
print("n"+"执行结束".center(scale//2,'-'))
time库的使用
#time库的使用
def wait():
    time.sleep(3.3)

import time
start = time.perf_counter()
print(time.time())          #时间戳1970年到现在的以秒计数的
print(time.ctime())         #人类可读时间
#print(time.gmtime())        #机器可理解时间
t = time.gmtime()
#wait()
#end = time.perf_counter()
#print(end-start)
print(time.strftime("%Y-%m-%B-%b-%d-  %A-%a-%I-%p-%M-%S",t))
#time.strptime(timestr,格式)         #文本转计算机可读时间
#%Y-%m-%B-%b-%d-%A-%a-%H-%I-%p-%M-%S
#年-月-月份名称-月份名称缩写-日期-星期-星期缩写-小时(24h)-小时12h-上下午-分钟-秒

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5650865.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存