python的学习笔记01_2变量 常量 注释 用户交互 格式化输出
变量是什么?
变量的作用
Variables are used to store information to be referenced and manipulated in a computer program. They also provide a way of labeling data with a descriptive name, so our programs can be understood more clearly by the reader and ourselves. It is helpful to think of variables as containers that hold information. Their sole purpose is to label and store data in memory. This data can then be used throughout your program.
变量用于在计算机程序中存储要引用和操作的信息。它们还提供了用描述性名称标记数据的方法,因此读者和我们自己可以更清楚地理解我们的程序。将变量看作容器来保存信息是很有帮助的。他们唯一的目的是在内存中标记和存储数据。这些数据可以在整个程序中使用。
变量定义规范
声明变量
name = "Alex Li"
变量定义规则
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
定义方式
驼峰体
AgeOfOldboy = 56
下划线
age_of_oldboy = 56
定义变量不好的方式举例
- 变量名为中文、拼音
- 变量名过长
- 变量名词不达意
常量即指不变的量,或在程序运行过程中不会改变的量
在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量
注释
代码注释分单行和多行注释,单行注释用#,多行注释可以用三对双引号""" """
代码注释原则:
- 不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可
- 注释可以用中文或英文,但绝对不要拼音噢
用户交互
# 将用户输入的内容赋值给 name 变量
name = input("请输入用户名:")
print (name) # 打印输入的内容
python2中有raw_input()和input()两种方式,第一种输出结果类型是str,第二种输出结果是int;python3中只有input()类型,输出结果类型是str
格式化输出
现有一练习需求,问用户的姓名、年龄、工作、爱好,然后打印成以下格式
------------ info of Eva_J -----------
Name : Eva_J
Age : 18
job : Teacher
------------- end -----------------
你怎么实现呢?你会发现,用字符拼接的方式还难实现这种格式的输出,所以一起来学一下新姿势
只需要把要打印的格式先准备好, 由于里面的一些信息是需要用户输入的,你没办法预设知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系就好啦
name = input( " Name: " )
age = input( " Age: " )
job = input( " Job: " )
hobbie = input( " Hobbie: " ) info = '''
------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表后面拓号里的name
Name : %s #代表name
Age : %s #代表age
job : %s #代表job
Hobbie: %s #代表hobbie
------------- end -----------------
''' %(name,name,age,job,hobbie) # 这行的%号就是把前面的字符串与拓号后面的变量关联起来 print (info)
%s就是代表字符串占位符,除此之外,还有%d,是数字占位符, 如果把上面的age后面的换成%d,就代表你必须只能输入数字啦
age : %d
我们运行一下,但是发现出错了。。。
不用担心,不要相信你的眼睛,我们调试一下,看看输入的到底是不是数字呢?怎么看呢?查看数据类型的方法是什么来着?type()
name = input( " Name: " )
age = input( " Age: " )
print (type(age))
执行输出是 Name:Alex
Age: 22
< class ' str ' > # 怎么会是str
Job:IT
....
让我大声告诉你,input接收的所有输入默认都是字符串格式!
要想程序不出错,那怎么办呢?简单,你可以把str转成int
age = int( input( " Age: " ) )
print (type(age))
肯定没问题了。相反,能不能把字符串转成数字呢?必然可以,str( yourStr )
格式化输出
1.%s替换
2.format替换字典
3.%()s字典的值替换
4.f"内容{}内容"
1.总结了一些简单基本的输出格式化形式以及函数format函数基本使用形式。
字符串格式化代码:
| 格式 | 描述 |
|---|---|
| %% | 百分号标记 |
| %c | 字符及其ASCII码 |
| %s | 字符串 |
| %d | 有符号整数(十进制) |
| %u | 无符号整数(十进制) |
| %o | 无符号整数(八进制) |
| %x | 无符号整数(十六进制) |
| %X | 无符号整数(十六进制大写字符) |
| %e | 浮点数字(科学计数法) |
| %E | 浮点数字(科学计数法,用E代替e) |
| %f | 浮点数字(用小数点符号) |
| %g | 浮点数字(根据值的大小采用%e或%f) |
| %G | 浮点数字(类似于%g) |
| %p | 指针(用十六进制打印值的内存地址) |
| %n | 存储输出字符的数量放进参数列表的下一个变量中 |
'''
可以指定所需长度的字符串的对齐方式:
< (默认)左对齐
> 右对齐
^ 中间对齐
= (只用于数字)在小数点后进行补齐
'''
print('1:\t|{0:>10},'.format('wangyu'))
print('2:\t|{0:4.2f}'.format(3.1415926))
print('3:\t|', format(3.1415926, '<10.2f'))
print('4:\t|{0:<10},{1:<15}'.format('wangyu', 3.1415926))
print('5:\t|User ID: {uid} Last seen: {last_login}'.format(uid='root', last_login='5 Mar 2008 07:20')) '''格式化指示符可以包含一个展示类型来控制格式。
例如,浮点数可以被格式化为一般格式或用幂来表示。
'b' - 二进制。将数字以2为基数进行输出。
'c' - 字符。在打印之前将整数转换成对应的Unicode字符串。
'd' - 十进制整数。将数字以10为基数进行输出。
'o' - 八进制。将数字以8为基数进行输出。
'x' - 十六进制。将数字以16为基数进行输出,9以上的位数用小写字母。
'e' - 幂符号。用科学计数法打印数字。用'e'表示幂。
'g' - 一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印。
'n' - 数字。当值为整数时和'd'相同,值为浮点数时和'g'相同。不同的是它会根据区域设置插入数字分隔符。
'%' - 百分数。将数值乘以100然后以fixed-point('f')格式打印,值后面会有一个百分号。
''' print('6:\t|{0:b}'.format(3))
print('7:\t|{0:c}'.format(3))
print('8:\t|{0:d}'.format(3))
print('9:\t|{0:o}'.format(3))
print('10:\t|{0:x}'.format(3))
print('11:\t|{0:e}'.format(3.75))
print('12:\t|{0:g}'.format(3.75))
print('13:\t|{0:n}'.format(3.75)) # 浮点数
print('14:\t|{0:n}'.format(3)) # 整数
print('15:\t|{0:%}'.format(3.75)) # 输入形式的控制format
a = int(input('a:'))
b = int(input('b:'))
print('16:\t|%*.*f' % (a, b, 1.1415926)) print('17:\t|{array[2]}'.format(array=range(10)))
print('18:\t|{attr.__class__}'.format(attr=0))
print('19:\t|{digit:*^ 10.5f}'.format(digit=1.0 / 3)) '''
类和类型可以定义一个__format__()方法来控制怎样格式化自己。
它会接受一个格式化指示符作为参数:
''' def __format__(self, format_spec):
if isinstance(format_spec, unicode):
return unicode(str(self))
else:
return str(self)

2.
#使用str.format()函数
#使用'{}'占位符
print('I\'m {},{}'.format('Hongten','Welcome to my space!'))
print('#' * 40)
#也可以使用'{0}','{1}'形式的占位符
print('{0},I\'m {1},my E-mail is {2}'.format('Hello','Hongten','hongtenzone@foxmail.com'))
#可以改变占位符的位置
print('{1},I\'m {0},my E-mail is {2}'.format('Hongten','Hello','hongtenzone@foxmail.com'))
print('#' * 40)
#使用'{name}'形式的占位符
print('Hi,{name},{message}'.format(name = 'Tom',message = 'How old are you?'))
print('#' * 40)
#混合使用'{0}','{name}'形式
print('{0},I\'m {1},{message}'.format('Hello','Hongten',message = 'This is a test message!'))
print('#' * 40)
#下面进行格式控制
import math
print('The value of PI is approximately {}.'.format(math.pi))
print('The value of PI is approximately {!r}.'.format(math.pi))
print('The value of PI is approximately {0:.3f}.'.format(math.pi))
table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}
for name, phone in table.items():
print('{0:10} ==> {1:10d}'.format(name, phone))
table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}
print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; ''Dcab: {0[Dcab]:d}'.format(table))

3.字典格式化插入
dic = {'name':'老男孩','age':45}
'%(name)s,%(age)s' % dic
4.f"{}" 双引号中是所有需要包含的内容,{}中是格式化替换的内容
a ,b = "" ,""
c = f'I\'m {a},{b}'
print(c)
python的学习笔记01_2变量 常量 注释 用户交互 格式化输出的更多相关文章
- Python 3 学习笔记之——变量作用域、模块和包
1. 变量作用域 Python 中,程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量是在哪里赋值的.变量的作用域决定了在哪一部分程序可以访问哪个特定的变量名称.Python 的作用域一共 ...
- Python基础学习_01字符串的拼接(字符串的格式化输出)
# 字符串的拼接 ---字符串的格式化输出 # 字符串的拼接 ---字符串的格式化输出 name = input("name:") age = input("age:&q ...
- python基础知识梳理-----1变量,常量,注释
因为公司用的是delphi ,所以自学了一阵delphi,但是随着语言的发展,delphi的前景堪忧啊.辞职以后打算好好学学python,然后找找数据分析和爬虫方面的工作. 记录此贴,仅作学习使用,所 ...
- [C语言学习笔记四]变量与系统的交互
使用 const 创建常量和使用 volatie 优化变量 C语言中使用 const 定义常量. 例如: const INT a = 10; 此处如果添加a = 20;,编辑器则会报错,因为此处 a ...
- 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...
- Python Click 学习笔记(转)
原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发 ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Python Flask学习笔记之模板
Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja ...
- Python Flask学习笔记之Hello World
Python Flask学习笔记之Hello World 安装virtualenv,配置Flask开发环境 virtualenv 虚拟环境是Python解释器的一个私有副本,在这个环境中可以安装私有包 ...
随机推荐
- pods "xxx" is forbidden: SecurityContext.RunAsUser is forbidden
报错信息如下: pods "k8s-logs-cndf5" is forbidden: SecurityContext.RunAsUser is forbidden 解决方法: 需 ...
- Java集合详解8:Java集合类细节精讲
今天我们来探索一下Java集合类中的一些技术细节.主要是对一些比较容易被遗漏和误解的知识点做一些讲解和补充.可能不全面,还请谅解. 本文参考:http://cmsblogs.com/?cat=5 具体 ...
- 调用pymysql模块操作数据库
1.创建数据库表: def create_table(tb_name): import pymysql#导入模块 #连接数据库 db = pymysql.Connect(','zabbix_db') ...
- Android studio 2 版本升级 Android studio 3 版本注意事项
1. compile 需要改成 implementation 或者 api例:implementation 'com.android.support:support-v4:23.4.0'详细规则 ht ...
- Windows下docker的安装以及遇到的问题
最近因为业务的需要,需要在本地搭建服务环境测试,不想去安装各种软件,于是就想到了用docker来满足我的需要.由于第一次在Windows下安装(以前一直是在linux下使用,但由于内存等硬件的限制 ...
- SCSS & SASS Color 颜色函数用法
最近做一个没有设计师参与的项目,发现 scss 内置的颜色函数还挺好用.记录分享下 rgba() 能省掉手工转换 hex 到 rgb 格式的工作,如以下 SCSS 代码 $linkColor: #20 ...
- Linux 桌面玩家指南:13. 使用 Git 及其和 Eclipse 的集成
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- scrapy爬虫 快速入门
Scrapy 1. 简介 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取 (更确切来说, 网络 ...
- spring boot添加 LocalDateTime 等 java8 时间类序列化和反序列化的支持
由于项目将原有的 Date类型的字段改造为 LocalDate,LocalDateTime,LocalTime 类型, 发现 spring 对项目的时间格式无法自动转换,故需手动配置下. 在sp ...
- js随机背景颜色
// 要求: 随机生成颜色RGB 核心点 :(0,0,0) rgb 每一组的数字取值范围是 0~255 // 需要随机生成 0~255 之间的整数 function getRandom(min, ma ...