.IDLE软件为内建于CPython的集成开发环境(IDE),包括编辑器,编译或解释器,调试器       .py(后缀保存)

2.行一,单行注释      多行,”””    ‘’’     之后,内建函数()

3.变量,常数  第一个,英文字母,下划线,中文。区分大小写。

      数值total,product  布尔True,False(大写的才是布尔)  字符串title=’ ’  “ “

4.输出print()   \t, \n,\ ”,\ ’ ,\\转义字符        输入input()   X=input(“  ”)

5.算术运算符(a=2-1),复合赋值运算符(x+=1),关系运算符(!=),逻辑运算符(not,and,or),位运算符(&,|,^,~)

6.流程控制 if 1 :block1   elif 2 : block2   else : block3

    PS : 出现:,必须缩排,用tab(缩进)

      for   else :  else可加可不加,range(),建立整数序列

     While :    else :   while条件小心了,别无限循环,强行停止 用Ctrl+C       

    Python中没有do while,则用其他语句完成运行一次

7.其他  String字符串,str()函数,用+来接

     方法:len(长度)  count(字数)  split(根据sep设置字符分割字符串)      find(检测是否包含子串,从0开始索引)  upper,lower(大小写转换)

      List列表 [ ]       数组array   元素append()   arr=[[1,2],[2,3]]

      Tuple元组 ( )       类似于list,但是它的顺序不能随意改变

     dict字典 { }       键(key) 值(value) ,没有顺序性,dict()+[ ]

8.函数

①内建函数(build-in function,BIF)

②标准函数库(standard library),得先import导包

③Def关键词自定义函数,程序员(define)  有参无参()

函数返回值return

传参:传值(call by value)  传址(pass-by-reference)

PS:如果可变对象在函数中被修改了内容值,因为占用的是同一个地址,所以会联动影    响函数外部的值

例子:温度转换

#temconvert.py                         

tempstr=input("输入温度值:")        //input返回的串给tempstr

if tempstr[-] in ['F','f']:       //in来判断尾部是否是F或f 其中的:不可省

C=(eval(tempstr[:-])-)/1.8
//右侧结果赋给C,去除尾部的F或者f,余下数字参与运算,变成摄氏温度值 print("转换后{:.2f}C".format(C)) elif tempstr[-]in ['C','c']: //in来判断是否是C,c摄氏度 F=1.8*eval(tempstr[:-])+ print("转换后温度{:.2f}F".format(F)) //print格式化方法,{ }表示槽,后面的F填充到槽里, //{:.2f}指填充时取小数点后两位,然后嵌入 //format()函数是字符串格式化函数 else: //都不是,则错误 print("error")
  1. 缩进,表达程序框架,是语法一部分!4个空格=1个tab键
  2. 注释,# 单行    ’’’   ‘’’ 多行
  3. 命名,变量用标识符表示,保存表示数据的占位符号
  4. Temp=”82F”   //向temp赋值82F
  5. 规则:字母,数字,下划线,汉字。
  6. 区分大小写。数字不能开头。
  7. 保留字,关键字。编程语言内部已经定义了。33个(26个基础)。区分大小写。True,False,None。
  8. 数据类型,整数,浮点数,列表[ , ],字符串
  9. 用保留字in判断一个元素是否在列表中,布尔判断。
  10. 字符串,是字符的有序序列,从0开始,进行索引。
  11. 正向递增序号(0,头),反向递减序号(-1,尾)。
  12. 索引,<字符串>[M],给出位置[ ]

    切片,<字符串>[M:N],返回一段字串[ ]。1:3,指第一,二个。

  13. 赋值语句,给变量赋予新的数据值,其右侧同时作用于变量

    分支语句,if ~ :  elif :   else:

    函数,上述黄色部分,y=f(x)

    输入input()  输出print(),还可以格式化

    评估函数eval(),去掉参数最外侧引号并执行余下语句的函数

    将任何字符串信息变成python语句

    例子: eval(“1”)       1

          eval(“1+2”)     3

    Eval(‘ ”1+2” ’)  ‘1+2’

    Eval(‘print(“hello”)’)  hello ?为什么没有单引号了

  14. 编译:源代码--编译器--目标代码--程序执行(input  output)【compiler】  解释:源代码+input--解释器--output【interpreter】
  15. 静态语言,编译,C  Java 一次性生成,优化充分  脚本语言,解释,python  PHP   源代码辅助,维护灵活
  16. IPO(input process output),process,算法步骤:分析问题,划分边界,设计算法,编写程序,调试测试,升级维护                                                                                (确定IPO--编写程序--调试程序)类型,交互式,文件式(.py)

图形绘制

演进:计算机能力--交互--数据--人工智能

语言: C,指针,内存,数据类型,结构,性能,底层

Java,面向对象,跨平台,运行时,交互【求职】

C++,对象,多态,继承,大规模

VB,对象,按钮,文本框,理解人机交互程序【要淘汰】

Html/CSS/JS,前端技术,前栈能力

Python,编程逻辑,第三方库,重在理解,通用语言

1.Python,通用语言,强制可读性,较少底层语法元素,语法简洁  第三方库,开放共享,操作系统广泛可用

    机器语言【二进制】cpu--汇编语言【助记符】cpu--高级语言【自然语言】--超级语言【集成开发】

例子:绘制蟒蛇

#蟒蛇

import turtle    //引入库

//import<库名>     不会出现函数重名

//<库名>.<函数名>(<函数参数>)

//改进:from turtle import*,下面就可省去turtle.XX() 会有重名

//改进:import turtle as t1   t1.setup(1,2,3,4)    ,起个小名t1

turtle.setup(650,350,200,200)

//设置窗体大小和位置setup(width,height,startx,starty)

//前两个在左上角,后两个可选(相对位置)

turtle.penup()     //turtle.pu  画笔抬起,不画

turtle.fd(-250)     

turtle.pendown()        //turtle.dn  画笔落下,画画

turtle.pensize(25)       //宽度,turtle.width(width)

turtle.pencolor("purple") //(0.63,0.13,0.94)小数值  再加个(),元组值

turtle.seth(-40) //setn=setheading(angle),只改变方向

for i in range(4):

//for  in  range() , 其中的i变量表示每次循环的计数,0到4-1=3

//range(N),产生N-1循环序列   range(M,N),产生M到N-1的序列

turtle.circle(40,80) //海龟走曲线

    turtle.circle(-40,80)

turtle.circle(40,80/2)  

turtle.fd(40)

//fd(d),d是像素

turtle.circle(16,180)

//circle(r,extend=None)根据半径r绘制extend角度的弧形

turtle.fd(40*2/3)

turtle.done()  //需要手工关闭退出
  1. Turtle库,海龟库是turtle绘图体系的python实现,Python计算生态=标准库+第三方库
  2. 标准库,随解释器直接安装到OS中的功能模块;第三方库,经过安装才能使用的功能模块;库library,包package,模块,module
  3. Turtle绘图窗体setup() ↑

空间坐标体系,①绝对坐标,中心(0,0)turtle.goto()  ②海龟坐标,相对坐标,上左下右,前进后退

turtle.fd()【forward】  .bk【back】  .circle(r,angle)【曲线运行】

    角度坐标体系,turtle.seth(angle),改变行进方向,angle为绝对度数;或者用,turtle.left(angle)  turtle.right(angle),海龟坐标

   4.RGB色彩模式:0-255(整数)255     0-1(小数)1.0    turtle.colormode(mode)     中间的空格,主要是后续加了逗号

基本数据类型

1.整数类型,pow(x,y),计算x^y(x的y次方)十进制,二(0b),八(0O),十六(0X)

2.浮点数类型,运算存在不确定尾数,一般发生在10的-16次幂,不是bug;round(x,d),对x四舍五入,d作为小数截取位

  科学记数法,1.2 e 5 = 1.2 * (10^5)  复数类型(只有python有复数)a+b j

  z.real获得实部,z.imag获得虚部   //空间变换,复变函数

3.数字运算,操作符

基本操作符:+  -  *   /(与数学运算,浮点数结果)  %(取余)  //(整数除,得的是整数商)   **(开方,次幂,类似pow)

赋值操作符:x+=y,7种

类型间可以进行混合运算,生成结果为最宽类型:整数--浮点数--复数(大覆盖小),也是为解决不确定尾数

4.数值运算函数,

abs(x),指x的绝对值

divmod(x,y),商余,(x//y,x%y)

pow(x,y[,z]),幂余,(x**y)% z,[..]表示参数z可以省略

round(x,[,d]),四舍五入,d是保留的小数位数,默认值为0

max()   min()

数值运算转换:int(),以此类推。。float()  complex()

例子:天天向上#day day up.py 

dayup=pow(1.01,365)   //每天

daydown=pow(0.99,365)

print("up:{:.2f},down:{:.2f}".format(dayup,daydown))

dayup=1.0             //每个工作日,5天

dayfactor=0.01

for i in range(365):      //循环计数,遍历,for in

    if i % 7 in [6,0]:

        dayup=dayup*(1-dayfactor)

    else:

        dayup=dayup*(1+dayfactor)

print("工作日:{:.2f}".format(dayup))  

def dayUP(df):      //笨办法试错,def  while。根据def参数计算工作日力量的函数,参数不同,这段代码可共用def保留字用于定义函数

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:
//while判断条件是否成立,成立则循环 dayfactor += 0.001 print("工作日:{:.3f}".format(dayfactor))

5.字符串类型及操作

表示, ” “    ‘ ‘        ‘’’  ‘’’    “””  “””

(三单引号可以是字符串,可以是注释)   ‘ 内容出现双引号“ ‘     “ 内容出现单引号‘ “         ‘’’ ( “  ‘ )  “””

序号,正向递增0 —— n-1,反向递减-n-1——-1

操作,索引,返回字符串中的单个字符 <字符串>[M]  切片,返回一段字符串 <字符串>[M:N]

  切片高级,[:3],至开头,”ABCDFG”,”ABC”   [::-1],相当于进行逆序

  <字符串>[M:N:K],根据步长K对其切片,隔空位

  转义符,表达特定字符本意,\b回退  \n换行  \r回车

  1. 字符串操作符
  2. x +y ,连接      n * x,复制n次字符串x        x  in s ,若x为s的子串返回True,否则返回False

  3. 字符串处理函数: len(x),长度;str(x),任意类型改写成字符串形式  反eval()函数;hex(x)   oct(x)   x的十六进制或八进制小写形式字符串
  4. chr(u)   ord(x)  u为Unicode编码,返回其对应字符,ord则是相反作用

    例子:for i in range(12):

    print(chr(9800+i),end=" ")    //输出星座,end作为参数,输出

    ——》♈ ♉ ♊ ♋ ♌ ♍ ♎ ♏ ♐ ♑ ♒ ♓

  5. 字符串处理方法:<a>.<b>(),中的b   其本身是函数,类似于a是对象,b是对其的方法,面向对象中的  str.lower()  str.upper()  小写  大写                 Str.spit(sep=None)  返回一个列表,由str根据sep被分割的部分组成       
    例子: “A,B,C”.spit(“,”)   ——》[‘A’, ’B’, ’C’]
    Str.count(sub) 返回子串sub 在str中出现的次数,计数 Str.replace(old,new) 替换 Str.center(width[,fillchar]) width居中,后面的填充 Str.strip(chars) 从str中去掉其左和右chars中列出的字符 Str.join(iter) 在iter变量除最后元素外每个元素后增加一个str,类似于加分隔了,格式化输出
  6. 字符串格式化: .format()方法实现。
  7. 槽,后面的拿给前面,类似于C语言中的scanf(“%d”,&a)  
  8. 槽内部对格式化的配置方式: time库使用,处理时间 import time;时间获取:time()获取当前时间戳,即计算机内部时间值,浮点数;ctime()获取当前时间并且以易读方式表示,返回字符串;gmtime()也是获取,表示为计算机可以处理的时间格式;时间格式化:展示模板:strftime(tpl,ts),tpl是格式化模板字符串,定义输出效果,ts是计算机内部时间类类型的变量;strptime(str,tpl),str字符串形式时间值
  9. 程序计时:产生时间,s拟休眠时间,sleep(s)

    获取时间,返回一个CPU级别的精确时间计数值,秒为单位。由于起点不确定,得连续调用才行。Start,end。perf_counter()

    例子:文本进度条
    
    #文本进度条.py
    
    import time  
    
    scale=10    //文本宽度
    
    print("----start----")
    
    for i in range(scale+1):  //产生循环,简单休眠,打印完成打印完成
    
        a='*'*i   //*被复制的次数为i
    
        b='.'*(scale-i)  //剩余的复制.
    
        c=(i/scale)*100  //输出与当前进度条和进度相关的百分比
    
        print("{:^3.0f}%[{}->{}]".format(c,a,b))  //设置三个槽
    
        time.sleep(0.1)
    
    print("----end-----")    
    
    展现:
    
    ----start----
    
     0 %[->..........]
    
    10 %[*->.........]
    
    20 %[**->........]
    
    30 %[***->.......]
    
    40 %[****->......]
    
    50 %[*****->.....]
    
    60 %[******->....]
    
    70 %[*******->...]
    
    80 %[********->..]
    
    90 %[*********->.]
    
    100%[**********->]
    
    ----end-----
    例子:文本进度条单行进度刷新
    
    刷新,用后打印的字符覆盖之前的字符,不能换行,print需要被控制。要能回退,打印之后光标回退到之前的位置\r
    
    import time
    
    for i in range(101):
    
        print("\r{:3}%".format(i),end="")
    
    //,end=””:给尾部增加后缀的作用,如果什么都不想加,空就行  
    
    // \r:在打印输出字符串之前使得光标退回到当前行的行首,意味着每次都从行收刷新并且不换行,得到刷新效果
    
        time.sleep(0.1)  

    数据结构

    基本数据类型:整型,浮点,布尔,字符

    结构数据类型:(虚拟数据类型)字符串,数组,指针,列表,文件

    抽象数据类型:(ADT)栈,队列。。

    算法:在有限步骤内解决数学问题的程序。(输入输出,明确,有效,有限)

    步骤:需求,设计规划,分析讨论,编写程序,测试检验

    流程:顺序,选择,重复

    面向对象程序设计:(object-oriented programming,OOP)

    对象--外部行为--内部状态

    封装,继承,多态

    PS:2019年一月份,学习笔记,只是视频入门,所以记的估计只有自己可以看懂,见谅~~

Python小白的更多相关文章

  1. python小白的初步爬虫

    前序:  最近工作不是很忙,领导突然找我谈话,说是谈话,其实就是分配活呗.果不其然,很快进入正题, 给了我一个网址链接,然后说需要商品的信息...巴拉巴拉.好吧,去做吧. 我当时的内心是崩溃的,pyt ...

  2. Python小白需要知道的 20 个骚操作!

    Python小白需要知道的 20 个骚操作! Python 是一个解释型语言,可读性与易用性让它越来越热门.正如 Python 之禅中所述: 优美胜于丑陋,明了胜于晦涩. 在你的日常编码中,以下技巧可 ...

  3. Django入门到进阶-更适合Python小白的系统课程

    Django入门到进阶-更适合Python小白的系统课程 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身 ...

  4. Python小白的数学建模课-A1.2021年数维杯C题(运动会优化比赛模式探索)探讨

    Python小白的数学建模课 A1-2021年数维杯C题(运动会优化比赛模式探索)探讨. 运动会优化比赛模式问题,是公平分配问题 『Python小白的数学建模课 @ Youcans』带你从数模小白成为 ...

  5. Python小白的数学建模课-03.线性规划

    线性规划是很多数模培训讲的第一个算法,算法很简单,思想很深刻. 要通过线性规划问题,理解如何学习数学建模.如何选择编程算法. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛 ...

  6. Python小白的数学建模课-04.整数规划

    整数规划与线性规划的差别只是变量的整数约束. 问题区别一点点,难度相差千万里. 选择简单通用的编程方案,让求解器去处理吧. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛达 ...

  7. Python小白的数学建模课-A1.国赛赛题类型分析

    分析赛题类型,才能有的放矢. 评论区留下邮箱地址,送你国奖论文分析 『Python小白的数学建模课 @ Youcans』 带你从数模小白成为国赛达人. 1. 数模竞赛国赛 A题类型分析 年份 题目 要 ...

  8. Python小白的数学建模课-05.0-1规划

    0-1 规划不仅是数模竞赛中的常见题型,也具有重要的现实意义. 双十一促销中网购平台要求二选一,就是互斥的决策问题,可以用 0-1规划建模. 小白学习 0-1 规划,首先要学会识别 0-1规划,学习将 ...

  9. Python小白的数学建模课-A3.12 个新冠疫情数模竞赛赛题与点评

    新冠疫情深刻和全面地影响着社会和生活,已经成为数学建模竞赛的背景帝. 本文收集了与新冠疫情相关的的数学建模竞赛赛题,供大家参考,欢迎收藏关注. 『Python小白的数学建模课 @ Youcans』带你 ...

  10. Python小白的数学建模课-06 固定费用问题

    Python 实例介绍固定费用问题的建模与求解. 学习 PuLP工具包中处理复杂问题的快捷使用方式. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛达人. 前文讲到几种典型 ...

随机推荐

  1. 通过指针突破C++类的访问权限

    看如下代码 #include "pch.h" #include <iostream> using namespace std; class A { public: A( ...

  2. 看完这篇文章,再次遇到Jedis「Redis客户端」异常相信你不再怕了!

    本文导读: [1] 疫情当前 [2] 应用异常监控 [3] Redis客户端异常分析 [4] Redis客户端问题引导分析 [5] 站在Redis客户端视角分析 [6] 站在Redis服务端视角分析 ...

  3. 带大家用40行python代码实现一个疫情地图

    最近两个月,因为新冠病毒无情的肆虐,相信会给每个中国人的记忆中画上重重的一笔.到今天为止,疫情形势依然十分严峻,虽然除湖北外的其他省份已经连续十一天确诊人数下降,但是接下来还有将近至少1.6亿的人口迁 ...

  4. 最大流-前置push-relabel算法实现

    Front Push-Relabel Algorithm 接口定义 Input:容量数组vector<vector<int>> capacity ,大小为n:源点int sou ...

  5. ubuntu 18. root登录图形界面

    修改文件 vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 增加两行: greeter-show-manual-login=true all-g ...

  6. 利用视频解析网站免费观看各大平台VIP电影

    需求: 观看VIP电影.VIP电视 准备: 1.视频解析网站 2.VIP电影URL 教程开始: 1.百度搜索[视频解析],会索引出大量的视频解析网站,随便选择一个网站. 2.找到想观看的VIP视频,复 ...

  7. Windows搭建IIS服务器使用NATAPP实现内网穿透

    目的:外网可以访问本地网页. 步骤: 一.实现内网访问 1.Win+Q搜索[控制面板],选择[程序],点击[启用或关闭Windows功能], 2.勾选[Internet Information Ser ...

  8. 域名解析服务-DNS

    一.DNS概述 DNS(Domain Name System)即域名系统.它使用层次结构的命名系统.将域名和IP相互映射 在整个互联网环境中连接了数以亿计的服务器以及个人主机.其中大部分网站都使用了域 ...

  9. qt creator源码全方面分析(2-10-2)

    目录 Creating Your First Plugin 创建一个插件项目 构建并运行插件 文件结构 qmake项目 插件元数据模板 插件类 头文件 源文件 Creating Your First ...

  10. 终于成功部署 Kubernetes HPA 基于 QPS 进行自动伸缩

    昨天晚上通过压测验证了 HPA 部署成功了. 所使用的 HPA 配置文件如下: apiVersion: autoscaling/v2beta2 kind: HorizontalPodAutoscale ...