来看一个非常简单的温度转换程序

#Tempconvert.py
tempstr = input("输入:")
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("wrong")

python包含的语法元素:

一、缩进

缩进是语法的一部分,缩进不正确,程序运行出错。它代表代码间包含和层次关系的唯一手段。缩进长度要保持一致,一般用4个空格或者一个TAB。

二、注释

以#开头,后面内容为注释,如果是多行需要注释,要使用’‘’,以‘’‘开头和结尾。如:

''' 这是注释
这也是注释 '''

三、变量

变量是程序中用于保存和表示数据的占位符号,它不像C语言,变量都有各自的类型,python中变量没有类型,是一个占位符号,你赋值给他啥,他就是啥。先赋值为字符串,他就是字符串,后赋值为整数,那他就是整数。

四、命名

大小写字母,数字,下划线和汉字等字符及组合,可以用汉字,这个是不是很神奇,完全颠覆了自己对编程语言的认识吧,可是python就是可以。python对大小写敏感,首字符不能是数字,不能与保留字相同。

>>> 温度=30
>>> print(温度)
30
>>>

五、保留字

python有33个保留字,也叫关键字,保留字是编程语言的基本单词。有如下保留字

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

六、数据类型

“abc”字符串,123 整数类型,[10, 23, 34] 列表类型。

字符串类型,“”,’‘ 双引号或者单引号都OK。字符串是有序序列,可以对字符进行索引。如字符串“abcde”,几个字符的正向索引为0,1,2,3,4。反向索引为-5,-4,-3,-2,-1。字符串使用见如下列子:

>>> str='abcd'
>>> str
'abcd'
>>> str[1]
'b'
>>> str[0:3]
'abc'
>>> 'abc'[0]
'a'

>>> str[1:-1]
'bc'
>>> str[0:-1]
'abc'
>>> str[1:]
'bcd'
>>> str[-3]
'b'
>>> str[-4:]
'abcd'
>>> str[-4:-1]
'abc'

其中str[M:N]这种为切片,表示取第M到第N-1个字符。列表类型:用[]表示,采用逗号分隔个元素。使用保留字 in 来判断一个元素是否在列表中。

七、分支语句

if xxx :
xxxx
elif xxx :
xxxx
else:
xxxx

注意 :冒号的使用。

八、输出print()

格式化输出,比如我们要输出一个浮点数,小数点后两位。可以用如下两个方法

>>> print("a = %.2f" % a)
a = 12.37
>>> print("a = {:.2f}".format(a))
a = 12.37

其中{}表示槽,后续变量填充到槽中。

九、评估函数eval()

eval函数是去掉参数最外侧引号并执行余下语句的函数,如:

>>> eval("1+4")
5
>>> eval("'1+3'")
'1+3'
>>> eval("print('Hello')")
Hello

python学习笔记(2)--基本语法元素的更多相关文章

  1. Python学习笔记:03语法

    Python 语法 Python语法包括: 模块函数导入 赋值 判断循环语句 模块导入 import somemodule somemodule.somefunc from somemodule im ...

  2. Python学习笔记之基本语法学习1

    ★学习目标: 用Python做HTTP接口测试 ★学习的大纲: ●Python语言基础(安装,第一个案例,基本语法等) ●Request模块使用 ●编写一个简单功能的接口测试案例 ●HTTP协议基础 ...

  3. python学习笔记1(语法)

    语法 从"Hello,world"开始看吧,我们学的很多语言都是从helloworld开始的. >>> 1 + 1 2 >>> print 'H ...

  4. 高放的python学习笔记之基本语法

    python与c++的不同之处 python的语句块不是用{}括起来的而是冒号后面跟一些与比当前语句多一的tab缩进的语句. 1.定义变量 python的变量类型不需要人为指出,会根据赋值的类型决定此 ...

  5. [python学习笔记] 数据类型与语法

    数据类型 数值型 int 整形 没有long类型,可以代表任意大小的整数. type(1) -> int float 浮点数 也没有double类型 type(1.2) -> float ...

  6. 01-Python学习笔记-基础语法

    Python标识符 -d           在解析时显示调试信息 -O           生成优化代码 ( .pyo 文件 ) -S           启动时不引入查找Python路径的位置 - ...

  7. python学习笔记1-基础语法

    1 在3版本中print需要加上括号2 多行语句:用\连接 item_one=1 item_two=2 item_three=3 total = item_one + \ item_two + \ i ...

  8. Python 学习笔记(基础语法 restful 、 Flask 和 Requests)

    input 函数 #!/usr/bin/env python3 name = input("\n\n按下 enter 键后退出.") print(name) print() 在 p ...

  9. webdriver(python)学习笔记四——定位一组元素

    webdriver可以很方便的使用find_element方法来定位某个特定的对象,不过有时候我们却需要定位一组对象,这时候就需要使用find_elements方法. 定位一组对象一般用于以下场景: ...

随机推荐

  1. ajax @requestBody

    前端: $.ajax({ type: "POST", contentType: "application/json;charset=UTF-8", url: R ...

  2. UVA11584-Partitioning by Palindromes(动态规划基础)

    Problem UVA11584-Partitioning by Palindromes Accept: 1326  Submit: 7151Time Limit: 3000 mSec Problem ...

  3. .NET 环境中使用RabbitMQ 转发 http://www.cnblogs.com/yangecnu/p/4227535.html

    .NET 环境中使用RabbitMQ   在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的 ...

  4. AI Haar特征

    Haar特征,也叫矩形特征,有四种特征(模板):边缘特征.线性特征.中心特征.对角线特征.每种模板都包含黑白两种区域. 模板的特征值=白色区域的像素和-黑色区域的像素和,反映的是图像的灰度变化情况. ...

  5. SkylineGlobe TerraExplorer Pro 7.0 Web 控件版 第一行示例代码

    SkylineGlobe TerraExplorer Pro 7.0 是原生的64位应用程序,在Web端用插件方式开发的第一行示例代码如下: 常规代码,需要IE64位: <!DOCTYPE ht ...

  6. Clustering[Spectral Clustering]

    0. 背景 谱聚类在2007年前后十分流行,因为它可以快速的通过标准的线性代数库来实现,且十分优于传统的聚类算法,如k-mean等. 至于在任何介绍谱聚类的算法原理上,随便翻开一个博客,都会有较为详细 ...

  7. 用C# 模拟实现unity里的协程

    注:需要了解C#的迭代器,不然很难理解. 之前面试有被问到unity协程的原理,以及撇开unity用纯C#去实现协程的方法.后来了解一下,确实可以的.趁这会有空,稍微总结一下. 还是结合代码说事吧: ...

  8. Sqlserver内存管理:限制最大占用内存(转载)

    一.Sqlserver对系统内存的管理原则是:按需分配,且贪婪(用完不还).它不会自动释放内存,因此执行结果集大的sql语句时,数据取出后,会一直占用内存,直到占满机器内存(并不会撑满,还是有个最大限 ...

  9. idea 上传代码到 gitee

    https://www.2cto.com/net/201804/740238.html 这一步如果是个空仓库可以提交,如果是个已有的项目 Define remote 一下就可以了,不要提交代码

  10. shell 小工具

    1.打印进度条(待完善) #!/bin/sh printf -- 'Performing asynchronous action..'; DONE=; printf -- '............. ...