一 .python 内置函数补充

  • chr()  -- 返回所给参数对应的 ASCII 对应的字符,与ord()相反
# -*- coding:utf-8 -*-
# Author:wencheng.zhao

a = chr(65)
print(a)

b = chr(66)
print(b)

##输出如下:
A
B

Process finished with exit code 0
  • ord --返回所给的值在ASCII中对应的数字,与chr()作用相反
# -*- coding:utf-8 -*-
# Author:wencheng.zhao

a = ord("A")
b = ord("B")
print(a)
print(b)
##显示如下:
65
66

Process finished with exit code 0

 ascii表对应如下:

      ASCII:

  应用如上两个内置函数编写一个自动生成验证码的小程序:

  要求: 随机产生8为验证码

      验证码包含数字和字母,代码实现如下

# -*- coding:utf-8 -*-
# Author:wencheng.zhao
import random

li = []   ##定义一个空列表用于存放结果

for i in range(8):       #每次生成一个字母or数字,生成8次
    r = random.randrange(0,8)   ##当r为此范围内的数字时就让次位置上的验证码为纯数字
    if r == 2 or r == 4:        ##随便等于 等于的值越多 产生纯数字的可能行就也越大
        num = random.randrange(0,10)   ##num为0-9的任意随机数字
        li.append(str(num))            ##将数字结果存如空列表中
    else:                              ##如果没有为纯数字的情况
        temp = random.randrange(65,91)  ##根据ascii表可得 65 - 90 为应为字母
        c = chr(temp)                   ##将得到的随机数字转换成对应的字母
        li.append(c)                    ##将结果存放到最终列表里

result = " ".join(li)                    #将结果排列

print(result)                           #打印结果

###最终现实如下:

D 9 F 3 1 O X 4

Process finished with exit code 0
  • compile()    将source编译成代码或者对象,代码或者对象能够通过语句exec()执行或者通过eval()来求值
  • exec()         执行python的代码 -- 执行完毕后无返回值。
  • eval()          执行python表达式 --执行完毕后有返回值。对比如下:
code = "print(123)"
aa = compile(code,"<string>","exec")  ##编译

ss = exec(aa)  # 执行
print(ss)      #无返回值

num = "8*8"    
bb = eval(num)
print(bb)      #有返回值,返回值为计算结果

##现实结果如下:
123
None
64

Process finished with exit code 0
  • dir()  --用来快速获取**所提供的功能
a = dir(list)
print(a)
##显示结果如下:
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

Process finished with exit code 0
  • help() --- 查看帮助 ,比较详细
help(list)

#显示如下:
class list(object)
 |  list() -> new empty list
 |  list(iterable) -> new list initialized from iterable's items
 |  
 |  Methods defined here:
 |  
 |  __add__(self, value, /)
 |      Return self+value.
 |  
 |  __contains__(self, key, /)
 |      Return key in self.
 |  
 |  __delitem__(self, key, /)
 |      Delete self[key].
 |  
 |  __eq__(self, value, /)
 |      Return self==value.
 |  
 |  __ge__(self, value, /)
 |      Return self>=value.
 |  
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |  
 |  __getitem__(...)
 |      x.__getitem__(y) <==> x[y]
 |  
 |  __gt__(self, value, /)
 |      Return self>value.
 |  
 |  __iadd__(self, value, /)
 |      Implement self+=value.
 |  
 |  __imul__(self, value, /)
 |      Implement self*=value.
 |  
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |  
 |  __iter__(self, /)
 |      Implement iter(self).
 |  
 |  __le__(self, value, /)
 |      Return self<=value.
 |  
 |  __len__(self, /)
 |      Return len(self).
 |  
 |  __lt__(self, value, /)
 |      Return self<value.
 |  
 |  __mul__(self, value, /)
 |      Return self*value.n
 |  
 |  __ne__(self, value, /)
 |      Return self!=value.
 |  
 |  __new__(*args, **kwargs) from builtins.type
 |      Create and return a new object.  See help(type) for accurate signature.
 |  
 |  __repr__(self, /)
 |      Return repr(self).
 |  
 |  __reversed__(...)
 |      L.__reversed__() -- return a reverse iterator over the list
 |  
 |  __rmul__(self, value, /)
 |      Return self*value.
 |  
 |  __setitem__(self, key, value, /)
 |      Set self[key] to value.
 |  
 |  __sizeof__(...)
 |      L.__sizeof__() -- size of L in memory, in bytes
 |  
 |  append(...)
 |      L.append(object) -> None -- append object to end
 |  
 |  clear(...)
 |      L.clear() -> None -- remove all items from L
 |  
 |  copy(...)
 |      L.copy() -> list -- a shallow copy of L
 |  
 |  count(...)
 |      L.count(value) -> integer -- return number of occurrences of value
 |  
 |  extend(...)
 |      L.extend(iterable) -> None -- extend list by appending elements from the iterable
 |  
 |  index(...)
 |      L.index(value, [start, [stop]]) -> integer -- return first index of value.
 |      Raises ValueError if the value is not present.
 |  
 |  insert(...)
 |      L.insert(index, object) -- insert object before index
 |  
 |  pop(...)
 |      L.pop([index]) -> item -- remove and return item at index (default last).
 |      Raises IndexError if list is empty or index is out of range.
 |  
 |  remove(...)
 |      L.remove(value) -> None -- remove first occurrence of value.
 |      Raises ValueError if the value is not present.
 |  
 |  reverse(...)
 |      L.reverse() -- reverse *IN PLACE*
 |  
 |  sort(...)
 |      L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
 |  
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |  
 |  __hash__ = None


Process finished with exit code 0
help() --样例

相关文章: