Python语法使用
由于之前学习过js,代码基本上是相同的,先看看和js有那些区别
| 项目 | python | javascript |
|---|---|---|
| 适用版本 | python3 | es6,即ECMAScript 2015 |
| 运行环境 | #!/usr/bin/python # -*- coding: UTF-8 -*- ,第1句指定linux运行环境,第2句指定文件编码 | 'use strict';,使用限制模式,即强制要提前声明变量,否则报错 |
| 大小写 | 要区分大小写 | 同python |
| 语句结尾 | 不需要 | 必须加分号; |
| 单行注释 | 用 # | 用// |
| 多行注释 | 不支持,通常变通为不赋值的多行字符串,即三个引号 ''' | 多行用/* */ |
| 变量声明 | 不需要 | 必须声明,格式为:let i=0; |
| 字符串 | 单双引号都可 | 同python |
| 多行字符串 | 用三引号,''' 或 """ 都可 | 用 ` |
| 转义字符 | 用 \ 表示,如 \ \ 表示\ | 同python |
| 批量不转义 | 用 r' ... '表示,即原样输出,不转换 | 不支持 |
| 16进制数字 | 用0x表示,如0xaf | 同python |
| 16进制字符串 | 用\ x表示,如'\ x41表示A | 同python |
| unicode字符串 | 用\ u表示,如 '\ u4e2d'表示 中 | 同python |
| 取幂 | 用双乘号**,相当于重复xx次,可用于数字和字符串 | 不支持 |
| 取商数 | 用双除号// | 不支持,//表示注释 |
| 取余数 | 用 百分号 % | 同 python |
| 布尔值 | True 或 False | true 或 false |
| 与或非 | 与and,或or,非not | 与&&,或||,非! |
| 空值 | 用 None | 用null |
| 赋值 | 用等号=,或+=,-= | 同python |
| 判断相等 | 用双等号== | 用三等号===,双等号比较时会进行类型转换,不安全 |
| 判断不等 | 用!= | 同python |
| 代码块 | 用4个空格缩进,缩进的上一句结尾用冒号: | 用花括号{} |
| 占位语句 | 用pass,表示有个功能,但还没开发出来,暂时留个位置 | 不支持 |
| 函数 | def 函数名(参数): | function 函数名(参数){} |
| 模块 | import 模块名,py文件就是模块 | 不支持 |
| 包 | import 包名/模块名,文件夹就是包,必须包含有 __init__.py |
不支持 |
| 数组 | 叫list,如[1,2] | 叫array,如[1,2] |
| 元组 | 叫tuple,如(1,2),不能修改 | 不支持 |
| if语句 | if xxx:...elif...else | if(){...}else if(){...} else {} |
| for循环 | for xxx in range(10):... | for(var i=0;i<=10;i++){} |
| for...in循环 | for k in o:... | for(var k in o){} |
| while循环 | while xxx:... | while(){} |
| do...while循环 | 不支持 | do{} while(); |
输出输入:
print() 输出内容
括号内与js的log相同也可以使用函数
a=30 print(a)
input()输入内容
a=input('请输入内容')
print(a)
数组list
可以使用空数组
a=['a','b','c']
print(a[0])
圆组tuple
tuple和list非常类似,但是tuple一旦初始化就不能修改,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的
a=('a','b')
print(a[0])
if else
python中的if语法和js中的有一点不同,js中使用为if(){}else{},而python为if(): else;
a=20
if(a>2):
print('a大于2')
else:
print('a小于2')
if...elif...else...语句格式:
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
else:
其他的事情
s = 30
if s > 90:
print('我很优秀')
elif s >=30 < 40:
print('我还没及格')
elif s > 40 < 50:
print('我才50分')
else:
print('算了,不考了')
三目运算符
a=2
b=3
max= a if a>b else b
print(max)
for in 遍历
执行后依次输出数组中的内容
a = ['Michael', 'Bob', 'Tracy']
for ab in a:
print(ab)
max 取最大值
a=[1,2.,3,4,5,6,7,8]
print(max(a))
abs() 求绝对值
print(abs(-3))
输出结果为3
数据类型转换
| 函数 | 说明 |
|---|---|
| int(x [,base ]) | 将x转换为一个整数 |
| float(x ) | 将x转换为一个浮点数 |
| complex(real [,imag ]) | 创建一个复数,real为实部,imag为虚部 |
| str(x ) | 将对象 x 转换为字符串 |
| repr(x ) | 将对象 x 转换为表达式字符串 |
| eval(str ) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
| tuple(s ) | 将序列 s 转换为一个元组 |
| list(s ) | 将序列 s 转换为一个列表 |
| chr(x ) | 将一个整数转换为一个Unicode字符 |
| ord(x ) | 将一个字符转换为它的ASCII整数值 |
| hex(x ) | 将一个整数转换为一个十六进制字符串 |
| oct(x ) | 将一个整数转换为一个八进制字符串 |
| bin(x ) | 将一个整数转换为一个二进制字符串 |
自定义函数 def
js中自定义函数为function a(){},python中使用def 与js有异曲同工之处,在调用,传参上都相同
def myfunction(a,b):
print(a+b) myfunction(1,2)
格式化输出 %
day = 6
month = 9
print('今天是%d月%d号'%(day, month))

f-strings输出
f-strings 提供一种简洁易读的方式, 可以在字符串中包含 Python 表达式. f-strings 以字母'f' 或 'F' 为前缀, 格式化字符串使用一对单引号、双引号、三单引号、三双引号. 格式化字符串中
name = 'bayi'
age = 35
format_string1 = f'我的名字是 {name}, 我的年龄是 {age}'
format_string2 = f"我的名字是 {name}, 我的年龄是 {age}"
format_string3 = F'''我的名字是 {name}, 我的年龄是 {age}'''
format_string4 = F"""我的名字是 {name}, 我的年龄是 {age}"""
format_string5 = f'3 + 5 = {3 + 5}'
a = 10
b = 20
format_string6 = f'3 + 5 = {a + b}'
# 两个花括号会被替换为一个花括号, 注意{{}} 不表示表达式
format_string7 = F'我的名字是 {{name}}, 我的年龄是 {{age}}'
** f-strings在Python3.6版中提供,查看python版本命令:python --version ***
a='xiao'
b='po'
fstr=f'我姓{a},名{b}'
print(fstr)
格式转换
| 格式符号 | 转换 |
|---|---|
| %c | 字符 |
| %s | 字符串 |
| %d | 有符号十进制整数 |
| %u | 无符号十进制整数 |
| %o | 八进制整数 |
| %x | 十六进制整数(小写字母0x) |
| %X | 十六进制整数(大写字母0X) |
| %f | 浮点数 |
| %e | 科学计数法(小写'e') |
| %E | 科学计数法(大写“E”) |
| %g | %f和%e 的简写 |
| %G | %f和%E的简写 |
Python语法使用的更多相关文章
- 对 Python 语法不够了解导致的 bug
对 Python 语法不够了解导致的 bug. `in` '20' in '11264,6144,4096,3072,2048,1024,300,30' Out[7]: True a_list = ' ...
- python 笔记2:python语法基础
python语法学习笔记: 1 输入输出 input(),print(). name = input('input your name : ')print('hello ,'+name)print(& ...
- python语法快速入门(1)
http://www.runoob.com/python/python-tutorial.html Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于PHP和Perl语言 ...
- python语法笔记(四)
1.对象的属性 python一切皆对象,每个对象都可能有多个属性.python的属性有一套统一的管理方案. 属性的__dict__系统 对象的属性可能来自于其类定义,叫做类属性:还可能 ...
- python语法-[with来自动释放对象]
python语法-[with来自动释放对象] http://www.cnblogs.com/itech/archive/2011/01/13/1934779.html 一 with python中的w ...
- wxpython 支持python语法高亮的自定义文本框控件的代码
在研发闲暇时间,把开发过程中比较重要的一些代码做个珍藏,下面的代码内容是关于wxpython 支持python语法高亮的自定义文本框控件的代码,应该是对大家也有用. import keywordimp ...
- Python语法的转义字符
Python语法的转义字符 转义字符 说 明 \ 续行符 \n 换行符 \0 空 \t 水平制表符,用于横向跳到下一制表位 \'' 双引号 \' 单引号 \\ 一个反斜杠 \f 换页 \0dd 八进 ...
- Python语法教程总结规范
Python语法易错点记录 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享. ...
- 初试Python语法小试牛刀之冒泡排序
Python很火,心里很慌,没吃过猪肉,也要见见猪走路. 看了几天Python的语法,大概初步了解了一点点,https://www.liaoxuefeng.com/wiki/0014316089557 ...
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...
随机推荐
- Python prometheus_client使用方式
#!/usr/bin/env python # -*- coding: utf8 -*- import socket,re from prometheus_client import generate ...
- (Python基础教程之十七)Python OrderedDict –有序字典
一个OrderedDict 维护插入顺序添加到字典中的项目.项目的顺序在迭代或序列化时也会保留. 1. Python OrderedDict示例 OrderedDict 是python collect ...
- MySQL原理简介—9.MySQL索引原理
大纲 1.磁盘数据页的存储结构 2.没有索引数据库如何搜索数据 3.在表中插入数据时如何进行页分裂 4.如何设计主键索引及如何根据主键索引查询 5.索引的物理存储结构 6.更新数据时自动维护的聚簇索引 ...
- UUID和雪花(Snowflake)算法该如何选择?
UUID 和 Snowflake 都可以生成唯一标识,在分布式系统中可以说是必备利器,那么我们该如何对不同的场景进行不同算法的选择呢,UUID 简单无序十分适合生成 requestID, Snowfl ...
- golang之copier
今天我们要介绍的copier库就能处理不同类型之间的赋值.除此之外,copier还能: 调用同名方法为字段赋值: 以源对象字段为参数调用目标对象的方法,从而为目标对象赋值(当然也可以做其它的任何事情) ...
- mysql5.7之密码重置
一.windows下更改mysql数据库密码在windows下找到my.ini文件,例如:C:\ProgramData\MySQL\MySQL Server 5.7,打开该文件夹下的my.ini文件, ...
- spring 使用 事件机制
概述 在编写代码的时候,比如我删除一篇文章,这个时候,如果我想做些额外的逻辑,这是就需要修改删除部分的代码.spring 提供了事件机制更优雅的实现这个,用户只需要实现事件监听即可. 代码实现 注入发 ...
- AI工具推荐——Cherry Studio
Cherry Studio介绍 Cherry Studio是一款支持多模型服务的 Windows/macOS GPT 客户端. 它的主要特点如下: 多样化的大型语言模型提供商支持 ️ 主要的大型语言模 ...
- LALR语法分析表
LALR语法分析表 1.LALR(向前看-LR)技术 2.在实践中常用,分析表比规范LR分析表小 LALR(1)项集族的内核的高效计算方法 1.构造G的LR(0)项集族的内核 2.确定自发生的符号 3 ...
- vue3笔记
如何创建vue3项目 基于 vue 脚手架 npm i @vue/cli -g vue create <project-name> cd <project-name> npm ...