python学习之路1(基本语法元素)
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(基本语法元素)的更多相关文章
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- python学习之路------你想要的都在这里了
python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
- python 学习之路开始了
python 学习之路开始了.....记录点点滴滴....
- python学习之路,2018.8.9
python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!
- Python学习之路——pycharm的第一个项目
Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...
随机推荐
- 关于“.WriteLine()是否需要这么多重载”的笔记
在Stack Overflow上看到一个较热门的问题,作笔记于此. Console.WriteLine()有以下如此多的重载: public static void WriteLine(string ...
- AngularJS 学习(-)Hello world
早期的AngularJS使我们的前端开发模式发生很大的变化,基使用MVC. Model - html 模板:Controller - js脚本; Model 来自于Web API 或其他Service ...
- 认识less和webstrom的less配置
认识less和webstrom的less配置 今天完成的事情: 首先第一件事情是,整理一下常用的颜色摄取 #F1F1F1 google的设置页面的body的背景颜色 #FFF 为google的内容块的 ...
- int **a 和 int (*a)[]的区别
关于理论知识隔壁们的教程说的很详细了我就不多赘述了.我这边主要贴一段代码来看看这两种东西使用上的区别到底在哪. #include <stdio.h> int main(int argc, ...
- Coppermine-1.5.46 (Ubuntu 16.04.1)
平台: Ubuntu 类型: 虚拟机镜像 软件包: coppermine-1.5.46 commercial content management coppermine media sharing ...
- Sundy_Android开发深入浅出和高级开发视频教程
Sundy_Android开发深入浅出和高级开发视频教程 放于播音员的网盘中又名:android零基础到高级软件开发工程师培训课程全集(400多讲) 1.课程介绍 2.java重点难点 3.版本控制- ...
- Unity3D转UE4指南
坐标: Unity3D X - left, right Y - up, down Z - forwards, backwards Unreal Engine4 X - forwards, backwa ...
- C4C销售订单行项目价格维护方法
需求很简单,能够创建销售订单,在行项目里添加产品,带出价格来,同时把总价显示在销售订单抬头区域. 如下图所示: 下面是具体配置. Business Configuration里,点击Sales Ord ...
- framework7中一行的字如果过多就省略号显示的CSS写法
.order-info-title { text-overflow: ellipsis !important; white-space: nowrap !important; overflow: hi ...
- POJ - 3109 Inner Vertices
不存在-1的情况,而且最多一轮就结束了.如果新增加的黑点v0会产生新的黑点v1,那么v0和v1肯定是在一条轴上的,而原来这条轴上已经有黑点了. 离散以后扫描线统计,往线段上插点,然后查询区间上点数. ...