1.变量与简单数据类型

1.1变量

  变量就是给你所写代码的信息起一个名字,用来存储此信息,使信息变得更加的简洁易读,

例如:message = "Hello World!",其中message就是一个变量;

1.1.1变量的命名规则与使用

  1.变量名只能包含字母、数字、下划线,变量名可以以字母或下划线开头,但不能以数字开头

  2.变量名不能包含空格,可以用下划线代替空格

  3.不能和python关键字或函数名重名

  4.变量名最好简洁,描述性好

  5.谨慎使用小写i和大写O

  6.尽量避免使用大写字母(看个人爱好)

  7.使用变量时注意不要用错变量名

python关键字:False,None,True,and,as, assert, break, class, continue, def, del, elif, else, except, finally, for, from, global,  if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with,        yield

1.2字符串

  字符串就是一系列的字符,在python中,带有单引号或者双引号的字符都是字符串,例如"Hello!",'world!',

两类四种表示方法:

  --由一对单引号/双引号表示,表示单行字符串

  --由一对三单/双引号表示,表示多行字符串(可当注释用)

  --最外层引号为字符串引号,内部出现其他引号可当文本输出

  --最外层为三个单引号作为字符串引号,内部可出现单,双引号

1.2.1操作字符串

  1.字符串的序号

    --正向递增,反向递减,索引和切片

  2.高级切片

   [M:N:K]根据步长对字符串进行切片

    --<字符串>[M:N];M缺失表示至开头,N缺失表示至结尾

      -例:”0123456789”[:3]  输出结果”0.12”

      --<字符串>[M:N:K]

      -例:”0123456789”[1:8:2]  输出为”1357”

    --逆序:”0123456789”[::-1]   输出为”9876543210”     #步长为-1指从后往前取数值

  3.转义符\:\后面的字符将当作字符本意来理解

    --例:”这里有个双引号(\”)”  输出为:这里有个双引号(“)

    --“\b”光标回退

    --“\n”换行

    --“\r”回车(光标移动到本行首)

  4.字符串操作

    --x+y表示连接两个字符xy变为新的字符

    --n*x或x*n表示复制n次字符串x

    --x in s  如果x是s的子串则返回True,否则False

  5.字符串处理函数

    --len(x)返回字符串x的长度,例:len(‘一二三456’)  结果为6

    --str(x)把任意类型的x转变为字符串形式, 例:str([1,2]) 结果为 ‘[1,2]’

     --hex(x)和oct(x)把整数x变为十六进制或八进制小写形式字符串

    --chr(u)和ord(x),把Unicode编码转换为单字符,把单字符转换为Unicode编码

    --Unicode编码:统一字符编码,从0到1114111(0x10FFFF),每个编码对应一个字符

  6.字符串处理方法

    --str.lower()或str.upper();返回字符串,全部字符小/大写;例:’sadASX’.lower();结果为sadasx

     --str.split(sep=None);返回一个列表,由str根据sep分隔组成;例:’A,B,C’.split(‘,’);结果为[‘A’,’B’,’C’]

    --str.count(sub);返回字符串sub在str中出现的次数;例:’a apple a day’.count(‘a’)结果为4

     --str.replace(old,new);返回str,所有old字串被new代替;例:’python’.replace(‘n’,’n123.io’)结果为’python123.io’

    --str.center(width[,fillchar]);根据width居中,fillchar可选;例:’python’.center(20,’=’)结果为=====python=====

    --str.strip(chars)从str中去掉在其左和右chars中列出的字符;例:’=_python_=’.strip(‘_=p’);结果为’ytho’

    --str.join(iter)在iter变量除最后一个元素外,每个元素后增加一个str;例:’,’.join(‘123456’)结果为’1,2,3,4,5,6’    主要用于字符串分隔等

  7.字符串类型的格式化

    (1)“{}:计算机{}的CPU占用率为{}%”.format(“2018-10-10”,”C”,”10”)   #槽的顺序和format()函数中参数的顺序默认情况下一一对应,都是从0开始

     --把format()方法中的参数按对应顺序填充到模板字符串的槽中,可以在槽中指定所要填充的format()中第几个参数

    (2)槽内部对格式化的配置

     --{<参数序号>:<格式控制标记>}

     --{:<填充><对齐><宽度>},填充是用于填充的单个字符,对齐包括左对齐<,右对齐>,居中^,宽度是指槽设定的输出宽度

       --{:<,><.><类型>},第一个尖括号中的逗号为数字的千位分隔符,第二个尖括号中的点表示浮点数小数精度或字符串最大输出长度,类型包括整数b,c,d,o,x,X,浮点数包括E,e,f,%

      例:”{0:=^20}”.format(“P”)  输出为’========P========’

       “{:10}”.format(“p”)   输出为’p_________’  #默认情况下填充为空格左对齐

  8.拼接字符串

    可以用加号来合并字符串

    例:name = "ad"

     print("hello," + name + "!")

  9.删除空白

    字符串或者存储字符串的变量后面有如下方法:

      .rstrip()  # 删除右空白  

      .lstrip()# 删除左空白

      .strip()  # 删除左右空白

注意:如果字符串中有类似单引号或双引号的字符,那么尽量用双引号括的字符串

1.3数字类型及其操作

1.3.1类型

  1.整数类型与数学中一致,可正可负pow(x,y)表示x的y次方,无限算

  2.浮点数类型与数学中一致,浮点数取值范围约-10的308次方至10的308次方,精度为10的-16次方(53位二进制表示小数部分),浮点数间运算存在不确定位数,不是bug,一般发生在10的-16次方左右

  3.浮点数可以采用科学记数法表示,采用字母e或E为幂的符号,以10为基数

   <a>e<b>表示a*(10^b);  例:4.3e-3  结果为0.0043;9.6E5值为960000.0

  4.复数类型(与数学中一致)

    x²=-1   定义j=根号下-1           a+bj,a为实部,b为虚部

    例:z = 1.23e-4+5.6e+89j

    z.real获取实部,z.imag获取虚部

1.3.2相关操作

  1.数值运算操作符

    x+y  x-y  x*y

      x/y #结果与数学运算一致(浮点数结构)

      x//y整数除,取商10//3结果3

      x%y模运算,取余10%3结果1;

      x**y=pow(x,y)幂运算

    xop=y即x=xopy,op为二元操作符

    x+=y  x-=y  x*=y  x/=y  x//=y  x%=y  x**=y例:x**=3即x=x**3

各类型间进行混合运算,生成结果为最宽类型(整数<浮点<复数);例:123+4.0=127.0

  2.数值运算函数

    abs(x)取x的绝对值

    divmod(x,y)商余(x//y,x%y);例:divmod(10,3)结果为(3,1)

    pow(x,y[,z])幂余(x**y)%z,[]内可省略

    round(x,d)四舍五入,d为保留小数的位数,默认为0,一般用于浮点数间运算和比较进行辅助

    max(x1,x2,…xn);min(x1,x2…xn)比较几个数的大小,n不限

    int(x)将x变为整数;float(x)将x变为浮点数,增加小数部分;complex(x)将x变为复数,增加虚部

2.基本语法元素

2.1例子:

  # 保存用户输入信息。

  TempStr = input(“请输入带有符号的温度值:”)

  # [‘F’,’f’]表示两个元素’F’,’f’,判断前者是否与列表中某个元素相同。

  If TempStr[-1] in [‘F’,’f’]:

    C = (eval(TempStr[0:-1])-32)/1.8

    print(“转换后的温度是{:.2f}C”.format(C))

  elif TempStr[-1] in [‘C’,’c’]:

    F = 1.8*eval(TempStr[0:-1])+32

    print(“转换后的温度是{:.2f}F”.format(F))

  else:

    print(“格式错误”)

2.1.1缩进

  代表程序格式框架,必须保持缩进一致,一般4个空格或一个Tab;

2.1.2注释

  单行注释用#加内容,多行注释用’’’  内容  ‘’’

2.1.3语句与函数:

  1.分支语句:if elif else:              函数:input eval print    python中的函数类似于数学中y=f(x)

  2.input()从控制台获得用户输入的函数,使用格式:<变量> = input(<提示信息字符串>),用户输入的信息以字符串类型保存在变量中

  3.print()以字符形式向控制台输出结果

    print()函数的格式化:

    print(“转换后的温度是{:.2f}C”.format(C)),{}表示槽,后续变量保存到槽中,{:.2f}表示将C变量填充到这个位置时取小数点后两位,如C值为123.456789,输出为  转换后的温度为123.45C

  4.评估函数eval():去掉参数最外层引号并执行余下语句,使用格式:eval(<字符串或字符串变量>)

    例:eval(“1”)输出为1;eval(“1+2”)输出为3;eval(‘“1+2”’)输出为”1+2”;eval(‘print(“Hello”)’)输出为Hello;eval(TempStr[0:-1]),如果TempStr[0:-1]值为”12.3”,则输出为12.3

python学习之路1(基本语法元素)的更多相关文章

  1. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  2. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  3. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  4. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  5. python学习之路------你想要的都在这里了

    python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...

  6. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  7. python学习之路网络编程篇(第四篇)

    python学习之路网络编程篇(第四篇) 内容待补充

  8. python 学习之路开始了

    python 学习之路开始了.....记录点点滴滴....

  9. python学习之路,2018.8.9

    python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!

  10. Python学习之路——pycharm的第一个项目

    Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...

随机推荐

  1. 关于“.WriteLine()是否需要这么多重载”的笔记

    在Stack Overflow上看到一个较热门的问题,作笔记于此. Console.WriteLine()有以下如此多的重载: public static void WriteLine(string ...

  2. AngularJS 学习(-)Hello world

    早期的AngularJS使我们的前端开发模式发生很大的变化,基使用MVC. Model - html 模板:Controller - js脚本; Model 来自于Web API 或其他Service ...

  3. 认识less和webstrom的less配置

    认识less和webstrom的less配置 今天完成的事情: 首先第一件事情是,整理一下常用的颜色摄取 #F1F1F1 google的设置页面的body的背景颜色 #FFF 为google的内容块的 ...

  4. int **a 和 int (*a)[]的区别

    关于理论知识隔壁们的教程说的很详细了我就不多赘述了.我这边主要贴一段代码来看看这两种东西使用上的区别到底在哪. #include <stdio.h> int main(int argc, ...

  5. Coppermine-1.5.46 (Ubuntu 16.04.1)

      平台: Ubuntu 类型: 虚拟机镜像 软件包: coppermine-1.5.46 commercial content management coppermine media sharing ...

  6. Sundy_Android开发深入浅出和高级开发视频教程

    Sundy_Android开发深入浅出和高级开发视频教程 放于播音员的网盘中又名:android零基础到高级软件开发工程师培训课程全集(400多讲) 1.课程介绍 2.java重点难点 3.版本控制- ...

  7. Unity3D转UE4指南

    坐标: Unity3D X - left, right Y - up, down Z - forwards, backwards Unreal Engine4 X - forwards, backwa ...

  8. C4C销售订单行项目价格维护方法

    需求很简单,能够创建销售订单,在行项目里添加产品,带出价格来,同时把总价显示在销售订单抬头区域. 如下图所示: 下面是具体配置. Business Configuration里,点击Sales Ord ...

  9. framework7中一行的字如果过多就省略号显示的CSS写法

    .order-info-title { text-overflow: ellipsis !important; white-space: nowrap !important; overflow: hi ...

  10. POJ - 3109 Inner Vertices

    不存在-1的情况,而且最多一轮就结束了.如果新增加的黑点v0会产生新的黑点v1,那么v0和v1肯定是在一条轴上的,而原来这条轴上已经有黑点了. 离散以后扫描线统计,往线段上插点,然后查询区间上点数. ...