Python 的基本语法和格式规范
在开始学习之前,我们做⼀道题,来作为⼤家今天的开场⽩!!
Q :现有信息学号为u20201111的学⽣,数学成绩为85,化学成绩为82.46,请按下⽅格式输出该信息
u20201111 的数学分数是 85
u20201111 的化学分数是 82.46
A:
学前引导:
基本操作和格式规范(本⽂重点)
编码规范
注释
打印
格式化输出
format ⽤法
转义字符
编码规范
国际惯例,⽂件编码和 Python 编码格式全部为 utf-8
例如:在 Python 代码的开头,要统⼀加上 # -- coding: utf-8 --。
命名规范
变量和标识符,变量和标识符在命名规则上都遵循以下原则,
只能由字母、数字和下划线组成,且不能以数字开头
命名要做到见名知意:⼀般来说,只要是⾃定义的名字都可以被称为标识符,包括变量、函数名、类名、模块名、包名,所以变量其实只是标识符的⼀个⼦类。变量常见的命名风格有三种:
单词全部纯⼩写,单词之间使⽤下划线隔开,例如:data_science
⼩驼峰式命名,第⼀个单词字母全⼩写,其他单词⾸字母⼤写,例如:dataScience
⼤驼峰式命名,每个单词的⾸字母均⼤写,例如:DataScience
以上这些命名规范不仅仅适⽤于变量,同时也适⽤于函数、类等;
在Python 中,⽅法和变量名⼀般采⽤第⼀种⽅式,类名采⽤第三种⽅式,第⼆种⽅式在Java 声明函数时⽐较常见。
切记,标识符的名字不能和Python 的关键字冲突(可以使⽤keyword.kwlist 查看Python 所有的关键字)
注释Python2-3输出区别
Python3 使⽤ print 必须要以⼩括号包裹打印内容,⽐如 Python2 既可以使⽤带⼩括号的⽅式,也可以使⽤⼀个空格来分隔打印内容,⽐如 现在都是以python3为主
Python 中单⾏注释以 # 开头,实例如下:
多⾏注释可以⽤多个 # 号,还有 ''' 和 """:
uid = 'u20201111'
Math = 85
Chemistry = 82.46
Sum = Math + Chemistry
print("%s 的数学成绩是 %d" %(uid,Math))
print("%s 的化学成绩是 %.2f" %(uid,Chemistry))
print("%s 的总成绩是 %d"%(uid,Sum))
'''
上⾯的⼩例题⼤家看懂了吗?没看懂的要亲⼿敲⼀下哦~
'''
print('hi')
print 'hi'
#我的第⼀⾏代码
print('hello world') #我的第⼆个注释
hello world
'''
我真的
我真的
可以
注释
很多⾏
'''
"""
我也能
注释
很多⾏
"""
print('hello world')
hello world
格式化输出
**拼接符 '+' **
print('变量名:'+变量)
注意:变量必须为字符串类型
拼接符','
print('变量名:',变量)
格式化符号
整数输出:
%o —— oct ⼋进制
%d —— dec ⼗进制
%x —— hex ⼗六进制
print('%o' % 20)  #以⼋进制输出20
print('%d' % 20)  #以⼗进制输出20
print('%x' % 20)  #以⼗六进制输出20
24
20
14
浮点数输出
%f ——保留⼩数点后⾯六位有效数字
  %.3f,保留3位⼩数位
%e ——保留⼩数点后⾯六位有效数字,指数形式输出
  %.3e,保留3位⼩数位,使⽤科学计数法
%g ——在保证六位有效数字的前提下,使⽤⼩数⽅式,否则使⽤科学计数法  %.3g,保留3位有效数字,使⽤⼩数或科学计数法
下⾯做⼀系列的演⽰:
print('%f' % 1.11)  # 默认保留6位⼩数
print('%.1f' % 1.11)  # 取1位⼩数
print('%e' % 1.11)  # 默认6位⼩数,⽤科学计数法
print('%.3e' % 1.11)  # 取3位⼩数,⽤科学计数法
print('%g' % 1111.1111)  # 默认6位有效数字
print('%.7g' % 1111.1111)  # 取7位有效数字
print('%.2g' % 1111.1111)  # 取2位有效数字,⾃动转换为科学计数法1.110000
1.1
1.110000e+00
1.110e+00
1111.11
1111.111
1.1e+03
format的⽤法
format的⽤法很常见,并且实⽤,⼤家可以根据案例多进⾏模仿与演⽰。
format就是变量之间的映射,它有三种形式
(1)不带编号,即“{}”
(2)带数字编号,可调换顺序,即“{1}”、“{2}”
(3)带关键字,即“{a}”、“{tom}”
映射案例如下:
print('{} {}'.format('hello','world'))  # 不带字段
print('{0} {1}'.format('hello','world'))  # 带数字编号
print('{0} {1} {0}'.format('hello','world'))  # 打乱顺序
print('{1} {1} {0}'.format('hello','world'))
print('{a} {tom} {a}'.format(tom='hello',a='world'))  # 带关键字
格式化字符串
f-string ,亦称为格式化字符串常量(formatted string literals ),是Python3.6新引⼊的⼀种字符串格式化⽅法。
f-string 在形式上是以 f 或 F 修饰符引领的字符串(f'xxx' 或 F'xxx'),以⼤括号 {} 标明被替换的字段;
f-string 在本质上并不是字符串常量,⽽是⼀个在运⾏时运算求值的表达式。
先尝试⼀下str 、int 类型的变量
再试⼀下字典
格式规范:
代码块快捷键:CTRL+ALT+L
转义字符
转义字符‘\’可以转义很多字符
‘\n’表⽰换⾏
’\t‘表⽰制表符
字符’\‘本⾝也要转义,所以‘\’表⽰的字符就是‘\’
下⾯为‘\’在输出过程中可能出现的情况;
⼩作业
1、学号为u20201111的学⽣,数学成绩为85,化学成绩为82.46,按格式输出:
u20201111 的数学分数是 85
u20201111 的化学分数是 82.46
并且求出该学号学⽣的总成绩,以及平均分
2、给定两个整数A 和B ,输出从A 到B 的所有整数以及这些数的和。
输⼊格式:
输⼊在⼀⾏中给出2个整数A 和B ,其中−100≤A ≤B ≤100,以空格分隔。
输出格式:
⾸先顺序输出从A 到B 的所有整数,每5个数字占⼀⾏,每个数字占5个字符宽度,向右对齐。最后在⼀⾏中按Sum = X 的格式输出全部数字的和X 。
3、给定学⽣三门成绩
(1)计算该学⽣的平均成绩并打印平均成绩保留两位⼩数点(2)计算该学⽣语⽂成绩占总成绩的百分之多少?并打印,百分⽐也保留两位⼩数4、⽤转义字符,输出⼀张todo list ,包含4条内容并⽤制表符对齐。格式如下:5、分别⽤多种格式输出,答案不限,输⼊参数为like,learning:I like Python, and I'am learning (注意上引号)
进阶题:编辑完成以下名⽚的显⽰:
print('{a} {tom} {a}'.format(tom='hello',a='world'))  # 带关键字hello world
hello world
hello world hello
world world hello world hello world
name = "⼩风"
age = 18
print(f"姓名:{name},年龄:{age}")
姓名:⼩风,年龄:18
one_dict = {"name": "⼩风", "age": 18, "hobby": ["running", "singing"]}python格式化输出format
print(f"姓名:{one_dict['name']},爱好:{one_dict['hobby']}")
姓名:⼩风,爱好:['running', 'singing']
print('I\'m ok.')
I'm ok.
print('I\'m learning\nPython.')
I'm learning
Python.
print('\\\n\\')
Chinese = 92
Math = 98.5
English = 93
This is todo list for today:
* Meeting at 11:00
* lunch with Mike
* buy milk
* do yoga
==================================
姓名: 努⼒赚钱的⼩风
QQ:xxxxxxx
⼿机号:185xxxxxx
:北京市xxxx
Blog:www.a2data
==================================
#思考,如何格式化输出?换⾏?
#进阶思路,如果姓名年龄是否可以是变量传⼊,或者外部输⼊呢?

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。