函数名 | 说明 |
---|---|
chr(x) | 将对应的字符转换为ASCII编码,也可以将整数x转换为一个字符 |
ord(x) | 将对应的字符转换为unicode编码(包括中文) |
bin(x) | 将一个整数x转换为一个二进制字符串 |
oct(x) | 将一个整数x转换为一个八进制字符串 |
hex(x) | 将一个整数x转换为一个十六进制字符串 |
eval() | 用于去掉字符串最外侧的引号,并按照Python语句方式执行去掉引号后的字符串;该函数常和input()函数一起使用 |
基本的输入语句input
基本语法格式
x = input('提示文字')
需要注意的是,提示文字不是必须的,一般推荐加上提示文字,这样可以提升程序的可读性;无论输入的数据是什么,x 的数据类型都是字符串(str) 类型。
示例代码如下
number = input('请输入一个数字')
print('您输入的数字是:'+number)
# 将number从str类型转换为int类型
number1 = int(number)
# 需要注意的是此处已经转为int类型,因此不能用+输出,可以用逗号进行输出,不过缺点为有空格
# 此时可以通过设置sep参数
print('您输入的数字是:',number1)
# 也可以使用格式化输出,此时不需要像print一样设置参数
print('您输入的数字是:{0}'.format(number1))
代码运行结果
请输入一个数字66
您输入的数字是:66
您输入的数字是: 66
您输入的数字是:66
Process finished with exit code 0
基本的输出语句print
print()函数完整语法格式:
print(value,...,sep='',end='\n',file=None)
# 其中参数sep表示分隔符,即若不设置sep,默认输出内容之间的分隔符为 空格
# 参数end表示print输出所有内容之后(若有多个print,则只会在最后一个print生效)会默认输出换行
print函数除了可以输出字符外,还有其他用法,示例代码如下:
# 1.使用print输出古诗,可以用三引号,这样不会改变其格式
print("""《春江花月夜》
-张若虚
春江潮水连海平,海上明月共潮生。
滟滟随波千万里,何处春江无月明!
江流宛转绕芳甸,月照花林皆似霰。
空里流霜不觉飞,汀上白沙看不见。
江天一色无纤尘,皎皎空中孤月轮。
江畔何人初见月?江月何年初照人?
人生代代无穷已,江月年年望相似。
不知江月待何人,但见长江送流水。
白云一片去悠悠,青枫浦上不胜愁。
谁家今夜扁舟子?何处相思明月楼?
可怜楼上月徘徊,应照离人妆镜台。
玉户帘中卷不去,捣衣砧上拂还来。
此时相望不相闻,愿逐月华流照君。
鸿雁长飞光不度,鱼龙潜跃水成文。
昨夜闲潭梦落花,可怜春半不还家。
江水流春去欲尽,江潭落月复西斜。
斜月沉沉藏海雾,碣石潇湘无限路。
不知乘月几人归,落月摇情满江树。""")
# 2.使用print配合其他函数
print(chr(98)) # 输出b
print(chr(66)) # 输出B
print(ord('b')) # 输出98
print(ord('北')) # 输出 21271
print(chr(21271)) # 输出 北
# 3.分别设置参数sep 和 参数end
a = 'Python'
b = 'Study'
print(a,b) # 此时未设置参数
print(a,b,sep='\\') # 设置参数sep
print(a,b,end='') # 设置参数end
# 4.使用+号输出内容,不过+连接的只能是字符串,此时下面两种输出方式输出的内容一样
print('Hello'+',World')
print('Hello,World')
中文声明注释
注意:该注释一定要写在第一行
示例代码如下
# coding=utf-8
加上这行语句后,此时文件的编码格式为UTF-8
关于浮点数
两个浮点类型的数在进行运算时,有一定的概率运算结果后增加一些“不确定的”尾数。
示例代码如下
print(0.1+0.2)
# 为了避免出现多余的尾数,可以使用round()函数第一个参数为要进行计算的数字,第二个参数为结果保留的小数位数
print(round(0.1+0.2,1))
代码运行结果
0.30000000000000004
0.3
Process finished with exit code 0
关于转义字符
原来的文章提到:在转义字符前添加r可以使得转义字符失效,实际上,添加R也可以。
示例代码如下
cities = '北京\t上海\t广州\t深圳'
print(cities)
cities1 = r'北京\t上海\t广州\t深圳 r'
print(cities1)
cities2 = R'北京\t上海\t广州\t深圳 R'
print(cities2)
代码运行结果
北京 上海 广州 深圳
北京\t上海\t广州\t深圳 r
北京\t上海\t广州\t深圳 R
Process finished with exit code 0
eval函数
基本语法格式如下
变量=eval(字符串)
示例代码如下
# 1.输入一个算术式的字符串,若去掉字符串,则会输出算术式运算的结果
s = '66+22'
print(s,type(s))
print('------去掉字符串后------')
s1 = eval(s)
print(s1,type(s1))
# 2.eval函数可以配合input函数使用,接收用户输入的字符串并将其转换为对应的数据类型,如数值
# (类似于int(x)或float(x)
print('-----接下来的输出2.中的内容-----')
age = eval(input('请输入您的年龄'))
print('您的出生年份为:',(2024-age))
# 3.若eval函数和字符串使用时,要注意对应的字符串是否有引用
# 如果去掉字符串之后没有引用,则在使用会出错
print('-----接下来的输出3.中的内容-----')
a = '广州欢迎你'
print(a) # 输出a
print(eval('a')) # 此时去掉两边的字符串后 广州欢迎你 指向变量a
# print(eval('广州欢迎你')) # 此时由于没有引用,因此报错NameError: name '广州欢迎你' is not defined
代码运行结果
66+22 <class 'str'>
------去掉字符串后------
88 <class 'int'>
-----接下来的输出2.中的内容-----
请输入您的年龄100
您的出生年份为: 1924
-----接下来的输出3.中的内容-----
广州欢迎你
广州欢迎你
Process finished with exit code 0
模式匹配
在Python3.11后新增了一个特性叫模式匹配
语法格式如下
match A:
caseA的值1:
语句1
caseA的值2:
语句2
caseA的值3:
语句3
...
caseA的值n:
语句n
示例代码如下
score = input('请输入您的评分等级:')
match score:
case'A':
print('优秀')
case'B':
print('良好')
case'C':
print('中等')
代码运行结果(输入A为例)
请输入您的评分等级:A
优秀
Process finished with exit code 0
此外,模式匹配还可以匹配对应的数据结构
示例代码如下
data = eval(input('请输入要匹配的数据类型:'))
match data:
case {'name':'CSDN@邂逅自己'}:
print('字典匹配成功')
case [1,2,3]:
print('列表匹配成功')
case (1,2,3):
print('元组匹配成功')
case _:
print('此时前面的所有数据结构都不能匹配成功,相当于多重if中的else')
代码运行结果
请输入要匹配的数据类型:{'name':'CSDN@邂逅自己'}
字典匹配成功
Process finished with exit code 0
由于该文章的知识点是对前文的补充,所以如果是第一次看的读者可能会觉得晦涩难懂,还望大家多多包涵,另外,如果想要系统的学习Python知识,可以点开我的主页,点击专栏“Python零基础从入门到实战”进行学习。
最后,文章创作不易,如果觉得文章对大家有帮助的话,还请点赞+关注;如果有能力的话,也可以打赏一下喔,谢谢大家!!!