keywords关键字运用

这是查看python关键字的方法的详细页面,介绍了和python,python 查看python关键字的方法有关的知识、技巧、经验,和一些python源码等。

python 语言中,通过使用keyword 
模块可以查看你使用的python 版本中的关键字,具体使用方法是: 


1.使用 import 导入keyword 模块; 


2.使用 keyword.kwlist 获得所有的关键字 


3.另外还可以使用 keyword.iskeyword (word) 的方式查看 word 是否为关键字。 

示例如下: 

获得所有关键字 

import keyword;

keyword.kwlist;


当前版本python3.1.1下的关键字:

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']



判断是否为关键字: 
keyword.iskeyword ('False') 
此时将返回True


python3.3.2中的关键字如下:

The following identifiers are used as reserved words, or keywords of the language, and cannot be used as ordinary identifiers. They must be spelled exactly as written here:

复制代码
False      class      finally    is         return
None       continue   for        lambda     try
True       def        from       nonlocal   while
and        del        global     not        with
as         elif       if         or         yield
assert     else       import     pass
break      except     in         raise
复制代码

共33个。

Flase  布尔类型的值,标示假,和True相反
class  定义类的关键字
finally

在异常处理的时候添加,有了它,程序始终要执行finally里面的程序代码块,如:

复制代码
class MyException(Exception):pass
try:
    #some code here
    raise MyException
except MyException:
    print "MyException encoutered"
finally:
    print "Arrive finally"
复制代码
is  Python中的对象包含三要素:id、type、value

其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值
is判断的是a对象是否就是b对象,是通过id来判断的
==判断的是a对象的值是否和b对象的值相等,是通过value来判断的

复制代码
>>> a = 1
>>> b = 1.0
>>> a is b
False
>>> a == b
True
>>> id(a)
12777000
>>> id(b)
14986000
复制代码
return  return语句用来从一个函数 返回 即跳出函数。我们也可选从函数 返回一个值 
None

None是一个特殊的常量。None和False不同。None不是0。None不是空字符串。None和任何其他的数据类型比较永远返回False。None有自己的数据类型NoneType。你可以将None复制给任何变量,但是你不能创建其他NoneType对象

复制代码
>>> type(None)  
<class 'NoneType'>  
>>> None == 0  
False  
>>> None == ''  
False  
>>> None == None  
True  
>>> None == False  
False
复制代码
continue  continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后 继续 进行下一轮循环。
for  for..in是另外一个循环语句,它在一序列的对象上 递归 即逐一使用队列中的每个项目
lambda

匿名函数是个很时髦的概念,提升了代码的简洁程度。如:

g = lambda x: x*2 
g(3)
try  我们可以使用try..except语句来处理异常。我们把通常的语句放在try-块中,而把我们的错误处理语句放在except-块中。
True  布尔类型的值,标示真,和False相反
def  
复制代码
# 定义函数
def hello():
    print('hello,hongten')
    
# 调用函数        
hello()
    
>>> hello,hongten
复制代码
from  在python用import或者from...import来导入相应的模块
nonlocal  nonlocal关键字用来在函数或其他作用域中使用外层(非全局)变量,如;
复制代码
def make_counter():
    count = 0
    def counter():
        nonlocal count
        count += 1
        return count
    return counter
    
def make_counter_test():
  mc = make_counter()
  print(mc())
  print(mc())
  print(mc())
复制代码
while  while语句允许你重复执行一块语句。while语句是所谓 循环 语句的一个例子。while语句有一个可选的else从句。
and   逻辑判断和C的&&一样
del

del用于list列表操作,删除一个或者连续几个元素。如:

a = [-1, 3,'aa', 85] # 定义一个list  
del a[0] #删除第0个元素  
del a[2:4] #删除从第2个元素开始,到第4个为止的元素。包括头不包括尾 
global  定义全局变量,详细信息:python开发_python中的变量:全局变量和局部变量
not  逻辑判断和C的!一样
with

 with是python2.5以后才有的,它实质是一个控制流语句,with可以用来简化try-finally语句。它的主要用法是实现一个类__enter__()和__exit__()方法,如:

复制代码
class controlled_execution:
    def _enter__(self):
        set things up
        return thing
    def __exit__(self, type, value,  traceback):
        tear thing down
with controlled_execution() as thing:
    some code
复制代码
as  结合with使用
elif  和if配合使用的
if  if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ), 否则 我们处理另外一块语句(称为 else-块 )。 else 从句是可选的。
or   逻辑判断和C的||一样
yield yield是关键字, 用起来像return,yield在告诉程序,要求函数返回一个生成器,如:
def createGenerator() :
mylist = range(3)
for i in mylist :
yield i*i
assert

断言,这个关键字用来在运行中检查程序的正确性,和很多其他语言是一样的作用。如:

assert len(mylist) >= 1  
else  
import

 在python用import或者from...import来导入相应的模块,如:

from sys import *
print('path:',path)
pass

 pass的意思是什么都不要做,作用是为了弥补语法和空定义上的冲突,我理解他的好处体现在代码的编写过程之中,比如你可以先写好软件的整个框架,然后再填好框架内具体函数和class的内容,如果没有pass编译器会报一堆的错误,让整个开发过程很不流畅,如:

def f(arg): pass    # a function that does nothing (yet)

class C: pass       # a class with no methods (yet)
break  

break语句是用来 终止 循环语句的,即哪怕循环条件没有称为False或序列还没有被完全递归,也停止执行循环语句。
一个重要的注释是,如果你从for或while循环中 终止,任何对应的循环else块将不执行。

except  使用try和except语句来捕获异常
in  for..in是另外一个循环语句,它在一序列的对象上 递归 即逐一使用队列中的每个项目
raise

python raise 和java  throw很类似,都是抛出异常。如:

复制代码
class MyException(Exception):pass
try:
    #some code here
    raise MyException
except MyException:
    print "MyException encoutered"
finally:
    print "Arrive finally"
复制代码
   
### 回答1: 您好,关于您的问题,可以通过使用CSS样式来实现关键字高亮,并且可以使用JavaScript生成随机颜色。具体实现方法可以参考以下代码: ```html <style> .highlight { background-color: #FCD5CE; /* 设置关键字高亮颜色 */ } </style> <script> function highlightKeywords() { var keywords = ["JavaScript", "CSS", "HTML"]; // 关键字列表 var elements = document.getElementsByTagName("*"); // 获取所有元素 for (var i = ; i < elements.length; i++) { var element = elements[i]; if (element.nodeType === 3) { // 判断是否为文本节点 var text = element.nodeValue; var replacedText = text; for (var j = ; j < keywords.length; j++) { var keyword = keywords[j]; var regex = new RegExp(keyword, "gi"); // 创建正则表达式,忽略大小写 if (regex.test(text)) { var span = document.createElement("span"); span.className = "highlight"; span.style.backgroundColor = getRandomColor(); // 设置随机颜色 span.textContent = keyword; replacedText = replacedText.replace(regex, span.outerHTML); } } if (replacedText !== text) { var newNode = document.createElement("span"); newNode.innerHTML = replacedText; element.parentNode.replaceChild(newNode, element); } } } } function getRandomColor() { var letters = "0123456789ABCDEF"; var color = "#"; for (var i = ; i < 6; i++) { color += letters[Math.floor(Math.random() * 16)]; } return color; } window.onload = highlightKeywords; // 页面加载完成后执行高亮函数 </script> ``` 以上代码可以实现在页面中将指定的关键字高亮,并且每个关键字的高亮颜色都是随机生成的。希望对您有所帮助。 ### 回答2: 在JavaScript中,我们可以运用CSS样式和DOM操作来实现关键字的高亮显示,并随机分配不同的颜色。 首先,我们需要为要高亮显示的关键字添加一个class或者id。例如,我们可以将关键字用`span`标签包裹,并设置一个class名为"highlight",如下所示: ```html <p>这是一个<span class="highlight">关键字</span>的例子。</p> ``` 接下来,在JavaScript中,我们可以通过获取所有包含关键字的元素,并为它们随机分配不同的颜色样式。 ```javascript // 获取所有拥有highlight类名的元素 const highlightElements = document.getElementsByClassName('highlight'); // 生成随机颜色的函数 function getRandomColor() { const letters = '0123456789ABCDEF'; let color = '#'; for (let i = 0; i < 6; i++) { color += letters[Math.floor(Math.random() * 16)]; } return color; } // 为每个关键字元素添加随机颜色样式 for (let element of highlightElements) { const randomColor = getRandomColor(); element.style.backgroundColor = randomColor; element.style.color = 'white'; // 可选,为了确保文本可读性 } ``` 以上代码会为所有拥有highlight类名的元素随机分配不同的背景颜色。`getRandomColor`函数会生成一个随机的十六进制颜色码,然后在循环中为每个关键字元素设置`backgroundColor`样式为生成的颜色,可以添加`color`样式属性,以确保文本的可读性。 使用这种方式,关键字在页面中将以不同的随机颜色高亮显示。 ### 回答3: 要实现JavaScript关键字的随机不同颜色高亮,可以按照以下步骤进行: 1. 首先,创建一个包含所有关键字的数组。可以使用JavaScript中的关键字列表或自定义关键字列表。 2. 使用JavaScript的Math.random()函数生成一个0到1之间的随机数。 3. 将随机数乘以关键字颜色总数并向下取整,得到一个索引值。 4. 使用该索引值从颜色数组中获取对应的颜色。 5. 将获取到的颜色应用到关键字的高亮样式中,例如使用CSS的color属性。 6. 重复步骤2至5,为每个关键字生成不同的随机颜色并应用到对应的高亮样式中。 以下是示例代码实现上述步骤: ```html <!DOCTYPE html> <html> <head> <style> .highlight { color: black; font-weight: bold; } </style> </head> <body> <p id="code"> var x = 5; for (var i = 0; i < 10; i++) { console.log(i); } var y = 10; </p> <script> // 关键字列表 var keywords = [ "var", "for", "console", "log", ]; // 颜色列表 var colors = ["red", "blue", "green", "yellow", "orange"]; var codeElement = document.getElementById("code"); // 遍历关键字列表 for (var i = 0; i < keywords.length; i++) { // 生成随机颜色索引 var randomIndex = Math.floor(Math.random() * colors.length); // 获取随机颜色 var randomColor = colors[randomIndex]; // 创建高亮样式 var highlightStyle = "color: " + randomColor; // 高亮关键字 var keywordRegExp = new RegExp("\\b" + keywords[i] + "\\b", "g"); codeElement.innerHTML = codeElement.innerHTML.replace( keywordRegExp, '<span class="highlight" style="' + highlightStyle + '">$&</span>' ); } </script> </body> </html> ``` 上述代码通过使用正则表达式将关键字找出并包裹在`<span>`标签中,该标签具有带有随机颜色类的高亮样式。每次运行代码,关键字都会被高亮为不同的随机颜色。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值