python之打印、变量、格式化输出
print打印
Centos相关打印
1.Centos7.9练习打印语句
Centos7的python版本是2.7.5,print打印时,可以不加 ()
,但是python3需要
#!/usr/bin/python
print ('wzy')
print 'wzy 666'
运行结果:
[root@db01~]# ./1.py
wzy
wzy 666
2.解决Centos乱码问题
不声明编码直接运行,会报错:
SyntaxError: Non-ASCII character '\xe6' in file ./1.py on line 4, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
加上:#-*- coding: utf-8 -*-
可以解决
[root@db01~]# cat 1.py
#!/usr/bin/python
#-*- coding: utf-8 -*-
print ('wzy')
print 'wzy 666'
print ('文治勇666')
[root@db01~]# ./1.py
wzy
wzy 666
文治勇666
python打印换行
方式1:使用\n
方式
print("hello world\npython") # 打印的结果会换行
注:如果变量之间需要换行,使用+ '\n'
方式2:使用'''
回车换行'''
print('''hello world
python''')# 打印的结果会换行
python打印不换行
1.使用end=" "
可以实现不换行打印
print('hello world', end=" ")
print("python")
运行结果:`hello world python`
打印长文本
有时候一段话过于长,可以使用()
,把要打印的内容放在里面
x=(
'wzy'
'wzy 666'
)
print(x)
运行结果:
wzywzy 666
VT100实现彩色打印
VT100是状态码
1.linux实现
echo -en "\\033[0;30m\\033[0;31mhello world\n\\033[0;30m"
echo -en "\\033[0;30m\\033[0;32mhello world\n\\033[0;30m"
echo -en "\\033[0;30m\\033[0;33mhello world\n\\033[0;30m"
echo -en "\\033[0;30m\\033[0;34mhello world\n\\033[0;30m"
echo -en "\\033[0;30m\\033[0;35mhello world\n\\033[0;30m"
echo -en "\\033[0;30m\\033[0;36mhello world\n\\033[0;30m"
2.python实现
print("\033[31;1;31m hello world\033[0m")
print("\033[31;1;32m hello world\033[0m")
print("\033[31;1;33m hello world\033[0m")
print("\033[31;1;34m hello world\033[0m")
print("\033[31;1;35m hello world\033[0m")
print("\033[31;1;36m hello world\033[0m")
变量
- 变量是在内存当中开辟一块新的区域
- id 函数打印出变量在内存中的位置
- 如果变量值未发生改变,那么在内存中的地址也不会发生改变
- python变量的数据类型是由值决定的
1.代码示例:
num = 100
print(id(num))
num = num + 100
print(num)
print(id(num))
结果:
1763409417680
200
1763409420944
2.验证内存中的地址未发生改变
num=1
print(id(num))
num=1
print(id(num))
运行结果:
2310231517488
2310231517488
快速定义多个变量
a, b = 1, 2
print(a, b)
结果:
1 2
变量值互换
a, b = 1, 2
print(a, b)
a, b = b, a
print(a, b)
结果:
1 2
2 1
input交互式赋值
- 类似于linux的
read -p
- ⚠️
input
输入的都是字符串类型
1.交互式输入name
name = input('请输入你的名字: ')
print(name)
2.input函数 + type函数结合使用
name = input('请输入你的名字: ')
age = input('请输入你的年龄: ')
print(type(name))
print(type(age))
数据类型
- 数字
- int 整型
(1, 2, -1, -2)
- float 浮点型
(34.678)
- bool 布尔型
(True/False)
- complex 复数(4+3J, 不应用于常规编程,仅了解即可
- 字符串
- str 单引号和双引号内表示的内容为字符串
“hello world" "12345"
- 列表
- list 使用中括号表示
[1, 2, 3, 4]
- 元组
- tuple 使用小括号表示
(1, 2, 3, 4)
- tuple 使用小括号表示
- 字典
- dict 使用大括号表示,存放key-value键值对
{"a":1, "b":2, "c":3}
- dict 使用大括号表示,存放key-value键值对
- 集合
- set 也使用大括号表示,但与字典有所不同
{1, 2, 3, 4}
- set 也使用大括号表示,但与字典有所不同
使用type查看变量类型
# 个人信息
name = 'wzy'
age = 18
height = 1.8
marry = False # False 或 True
print(type(name))
print(type(age))
print(type(height))
print(type(marry))
结果:
<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>
变量类型转换函数
转换函数 | 说明 |
---|---|
int(xxx) | 将xxx转换为整数 |
float(xxx) | 将xxx转换为浮点型 |
str(xxx) | 将xxx转换为字符串 |
list(xxx) | 将xxx转换为列表 |
tuple(xxx) | 将xxx转换为元组 |
dict(xxx) | 将xxx转换为字典 |
set(xxx) | 将xxx转换为集合 |
chr(xxx) | 把整数[0-255]转成对应的ASCII码 |
ord(xxx) | 把ASCII码转成对应的整数[0-255] |
案例-打印拼接时注意字符
虽然编辑时没有报错,但是运行时报错,因为汉字 + 数字
时不能直接拼接的
age = input('输入你的年龄: ')
print(age, +'你的年龄是' + int(age)+2 + '岁')
所以最后还需要把整句话转换为str类型
age = input('输入你的年龄: ')
print('你的年龄是' + str(int(age) + 2) + '岁')
格式化输出
%s
和 {}
都相当于占位符,安装顺序对应后边的变量
操作符 | 说明 |
---|---|
%s | 字符串,string |
%d | 整数,源自C语言的decimal |
%f | 浮点数,float |
%% | 输出 % |
使用操作符
案例1:
age = input('输入你的年龄: ')
print('你的年龄是%d岁' % int(age))
print('你的年龄是%s岁' % str(age))
运行结果:
输入你的年龄: 18
你的年龄是18岁
你的年龄是18岁
案例2:在引用的操作符中使用运算
age = (input('输入你的年龄: '))
print('你的年龄是%d岁' % int(age))
print('你的年龄是%s岁' % str(age), '10年后你%d岁' % int(int(age) + 10))
输入你的年龄: 18
你的年龄是18岁
你的年龄是18岁 10年后你28岁
使用.format
age = (input('输入你的年龄: '))
print('10年后你{}岁'.format(int(age) + 10))
使用name + age
name = input('请输入你的姓名: ')
age = input('输入你的年龄: ')
print('{}, 10年后你{}岁'.format(name, int(age) + 10))
结果:
请输入你的姓名: wzy
输入你的年龄: 18
wzy, 10年后你28岁
案例-格式化输出+换行打印
**f-string** 格式化输出
name = input('Your name is ')
sex = input('Your sex is ')
job = input('Your job is ')
number = input('Your number is ')
print(f'name: {name}\nsex: {sex}\njob: {job}\nnumber: {number}')
结果:
Your name is wzy
Your sex is man
Your job is it
Your number is 18
name: wzy
sex: man
job: it
number: 18
常规.format
name = input('Your name is ')
age = input('Your sex is ')
print('name: {}\nage: {}'.format(name, age))
结果:
Your name is wzy
Your sex is 18
name: wzy
age: 18
`'''`三引号方式美化书写的代码
name = input('Your name is ')
age = input('Your age is ')
print('''
name: {}
age: {}
'''.format(name, age))
结果:
Your name is wzy
Your sex is 18
name: wzy
age: 18
18
常规.format
name = input('Your name is ')
age = input('Your sex is ')
print('name: {}\nage: {}'.format(name, age))
结果:
Your name is wzy
Your sex is 18
name: wzy
age: 18
`'''`三引号方式美化书写的代码
name = input('Your name is ')
age = input('Your age is ')
print('''
name: {}
age: {}
'''.format(name, age))
结果:
Your name is wzy
Your sex is 18
name: wzy
age: 18
原文地址:https://blog.csdn.net/qq_73797346/article/details/144751675
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!