重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
首先按下“Win+R”组合键,打开运行窗口。在打开文本框输入“cmd”,点击确定。在打开的cmd窗口中,输入:“python”,点击Enter键。在Python环境中,输入:“x = format(0.5, '%')”,点击Enter键。在Python环境中,输入:“print(x)”,详细步骤:
创新互联专注于信阳企业网站建设,响应式网站,商城建设。信阳网站建设公司,为信阳等地区提供建站服务。全流程定制网站建设,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
1、首先按下“Win+R”组合键,打开运行窗口。
2、在打开文本框输入“cmd”,点击确定。
3、在打开的cmd窗口中,输入:“python”,点击Enter键。
4、在Python环境中,输入:“x = format(0.5, '%')”,点击Enter键。
5、在Python环境中,输入:“print(x)”。
6、点击Enter键,即可使用Python内置的format函数把数字0.5格式化为百分比值。
eval函数将字符串当成有效Python表达式来求值,并返回计算结果
x = 1
eval('x+1')
eval('x==1')
与之对应的repr函数,它能够将Python的变量和表达式转换为字符串表示
repr(x==1)
repr(x+1)
filter就是按条件筛选:
filter(bool,['spam','','ni'])
list(filter(bool,[''spam,'','ni']))
输出的结果为['spam','ni']
#按照bool型筛选,因为中间的‘’,为空,不是bool型所以过滤掉。
在学习Python的过程中,有几个比较重要的内置函数:help()函数、dir()函数、input()与raw_input()函数、print()函数、type()函数。
第一、help()函数
Help()函数的参数分为两种:如果传一个字符串做参数的话,它会自动搜索以这个字符串命名的模块、方法等;如果传入的是一个对象,就会显示这个对象的类型的帮助。比如输入help(‘print’),它就会寻找以‘print’为名的模块、类等,找不到就会看到提示信息;而print在Python里是一个保留字,和pass、return同等,而非对象,所以help(print)也会报错。
第二、dir()函数
dir()函数返回任意对象的属性和方法列表,包含模块对象、函数对象、字符串对象、列表对象、字典对象等。尽管查找和导入模块相对容易,但是记住每个模块包含什么却不是这么简单,您并不希望总是必须查看源代码来找出答案。Python提供了一种方法,可以使用内置的dir()函数来检查模块的内容,当你为dir()提供一个模块名的时候,它返回模块定义的属性列表。dir()函数适用于所有对象的类型,包含字符串、整数、列表、元组、字典、函数、定制类、类实例和类方法。
第三、input与raw_input函数
都是用于读取用户输入的,不同的是input()函数期望用户输入的是一个有效的表达式,而raw_input()函数是将用户的输入包装成一个字符串。
第四、Print()函数
Print在Python3版本之间是作为Python语句使用的,在Python3里print是作为函数使用的。
第五、type()函数
Type()函数返回任意对象的数据类型。在types模块中列出了可能的数据类型,这对于处理多种数据类型的函数非常有用,它通过返回类型对象来做到这一点,可以将这个类型对象与types模块中定义类型相比较。
看文字的话会很乱,和图一起看会好一点
首先,it是个生成器(_odd_iter),并使n=3,随后,it作为一个生成器存在于filter对象中(迭代器),并使it为一个filter对象,经过循环,到达next语句,先计算it _odd_iter(生成器),生成了新的数之后,开始计算filter。第一次循环的时候第18行的代码相当于 it = filter(_not_divisible(3), it ),等号右面的it还在等待next调用生成值,生成值之后,就将它代入为lambda的x中……第二次循环的时候第18行代码变成 it = filter(_not_divisible(5), filter(_not_divisible(3), it ) ),同样等号右面的it仍然在等待next调用生成新的值
我刚看这个教程,不知道对不对。。。
对了我看见有一个人问把代码第18行改成 it = filter(lambda x: x % n 0, it)
会失去过滤功能,我觉得,lambda是一个临时函数,所以觉得像filter(div(5), filter(div(3), it))这种存在多个lambda临时函数的话是很奇怪的,
在调试时,发现filter只检测了一个n(最近被赋值的),相当于7%5,9%7这样,因此失去过滤素数功能。模拟一下,在将要输出5的时候,it = filter()的那行代码变为:
it = filter(lambda x : x % n 0 , filter (lambda x : x % n 0 , it ) ),it将值赋给x,但是,我觉得n被赋值时,会刷新其他lambda中的n,造成类似于 it = filter(lambda x : x % 5 0 , filter (lambda x : x % 5 0 , it ) )的情况
Python解释器内置了许多函数,这意味着我们无需定义,始终可以它们。下面按照函数的字母顺序,讨论一些常用的内建函数。
eval()
eval()函数解析传给它的表达式,并在程序中运行Python表达式(代码)。举个例子:
x = 1
eval("x + 1") # 注意:"x + 1"是字符串
2
eval("4 9")
True
eval("'py' * 3")
'pypypy'
eval("10 ** 2")
100
eval()函数不仅仅能运行简单表达式,还能调用函数,使用方法等等:
eval("abs(-11)") # 计算-11的绝对值
11
eval('"hello".upper()') # 把字符串'hello'全变成大写字母
'HELLO'
import os
eval('os.getcwd()') # 获取当前的工作目录
'/home/thepythonguru'
但是需要注意的是eval()仅适用于表达式,尝试传递语句会导致语法错误:
eval('a = 1') # 赋值语句
Traceback (most recent call last):
File "", line 1, in
File "", line 1
a = 1
^
SyntaxError: invalid syntax
eval('import re') # 导入语句
Traceback (most recent call last):
File "", line 1, in
File "", line 1
import re
^
SyntaxError: invalid syntax
此外,使用eval()语句应该十分小心,永远不要将不受信任的源直接传递给eval()。 因为恶意用户很容易对您的系统造成破坏。 例如:
eval(input()) # eval()将执行用户输入的代码
用户输入以下代码就能从系统中删除所有文件:
os.system("RM -RF /")
# 上面输入相当于执行:
eval('os.system("RM -RF /")')
filter()
"filter"的意思是“过滤”,filter()函数需要两个参数:一个函数对象和一个可迭代对象。函数对象需要返回一个布尔值,并为可迭代的每个元素调用。 filter()函数仅返回那些通过函数对象返回值为true的元素。解释有一些抽象,看一个例子:
a = [1, 2, 3, 4, 5, 6]
filter(lambda x : x % 2 == 0, a) # 过滤出所有偶数,结果返回一个filter对象
filter object at 0x1036dc048
list(filter(lambda x : x % 2 == 0, a)) # 可以使用list()函数使fileter对象变成列表,方便查看结果
[2, 4, 6]
下面是另外一个例子:
dict_a = [{'name': 'python', 'points': 10}, {'name': 'java', 'points': 8}]
filter(lambda x : x['name'] == 'python', dict_a) # 过滤出列表中键'name'为值'python'的字典
filter object at 0x1036de128
tuple(filter(lambda x : x['name'] == 'python', dict_a)) # 使用tuple()函数使结果变成字典
({'name': 'python', 'points': 10},)
float()
float()的参数是一个数字或者字符串,它返回一个浮点数。如果参数是字符串,则字符串中应该包含一个数字,并可以在数字前加入一个 '-' 符号,代表负数。参数也可以是表示NaN(非数字)或正无穷大的字符串。如果没有任何参数的话,将返回0.0。
float('+1.23') # 1.23
1.23
float(' -12345\n') # -12345
-12345.0
float('1e-003') # 0.001
0.001
float('+1E6') # 10的6次幂
1000000.0
float('-Infinity') # 无穷小
-inf
float('-inf') + 100 # 负无穷小加100仍等于负无穷小
-inf
float('inf') # 无穷大
inf
float('NaN') # NaN,代表非数字
nan
关于Python的基础问题可以看下这个网页的视频教程,网页链接,希望我的回答能帮到你。