Python:基础入门

2020-01-13 15:32:48 浏览数 (1)

代码语言:javascript复制
#Python逻辑运算:和,或,非 
#Python中没有&&,|| !!短路逻辑运算符替代用和,或,不分别替代 
打印(“ ===============================逻辑运算符============ =================== ) 
a =  1 ; 
b =  2 ; 
打印(“ a =” ,a) 
打印(“ b =” ,b) 
打印(“ a和b:” ,a  和 b) 
打印(“ b和a:” ,b  和 a) 
打印(“ a或b:” ,a  或 b) 
打印(“ b或a:” ,b  或 a) 
打印(“ True and Fasle:” ,True 和False )   
打印(“ False或True:” ,False 或True )   
打印(“ True and 0:” ,True 和0 )   
打印(“ 0和True:” ,  0 和True )   
打印(“错误和1:” ,错误和1 )   
打印(“ 1和False:” ,  1 和False )   
#Python中0可以表示False,非0可以表示真 
打印(“ 0 == False:” ,0  ==  False ) 
打印(“ 4 == True:” ,5  ==  True ) 
打印(“ a == False” ,a ==  False ) 
 
打印(“非0” ,非0 )  
打印(“不是4” ,不是4 )  
打印(“不是” ,不是 a) 
 
打印(“不是a和b:” ,不是 (a  和 b)) 
打印(“不是a或b:” ,不是 (a  或 b)) 
 
 
#Python中是和不是使用检测两个对象的引用是否相同,==使用判断值是否相同 
打印(“ a为True” ,a  为True )  
打印(“ a == True” ,a ==  True ) 
 
 
#Python流程控制:如果为其他,则为其他 
打印(“ ===============================流程控制语句============ =================== ) 
#Python if语句 
c =  2 
如果 c ==  0 : 
    打印(“ True” ) 
elif  c ==  2 : 
    打印(“假” ) 
其他: 
    打印(“ ......” ) 
     
 
 
#Python while语句 
d =  0 
而True :  
    d   =  1 
    打印(“ d:” ,d) 
    如果 d ==  10 : 
        打破 
     
 
 
#Python for语句 
e = [ “ a” ,“ b” ,“ c” ,“ d” ] 
因为 我  在 e: 
    打印(i) 
 
     
     
#Python异常捕获 
打印(“ ===============================异常陷阱语句============ =================== ) 
f =  1.5 
尝试: 
    i = int(f) 
    打印(“有效整数:” ,i) 
除了 ValueError作为err: 
    打印(错误) 
 
 
#Python算术操作符 
打印(“ ===============================算术操作符============= =================== ) 
g =  6 ; 
h =  4 ; 
#Python不支持自增和自减运算符 
打印(“ g =” ,g) 
打印(“ h =” ,h) 
打印(“ g   h =” ,g   h) 
打印(“ gh =” ,gh) 
打印(“ g * h =” ,g * h) 
打印(“ g / h =” ,g / h) 
#取整 
打印(“ g // h =” ,g // h) 
#取余 
打印(“ g%h =” ,g%h) 
#g的h次幂 
打印(“ g ** h =” ,g ** h) 
g   = h 
打印(“ g   = h” ,g) 
 
列表= [ “ a” ,“ b” ,“ c” ] 
#列表使用  =运算符时,  =右边必须是一个iterable 
#错误的用法:列表  = 5 
清单  = [ 5 ] 
#['a','b','c',5] 
打印(列表) 
 
列表  = [ “ d” ,“ e” ] 
#['a','b','c','d','d','e'] 
打印(列表) 
#一个奇怪的现象 
列表  =  “你好” 
#['a','b','c',5,'h','e','l','l','o'] 
#字符串是一个iterable,这回导致字符串中的每个字符都被添加 
打印(列表) 
 
#下列两种方法可以讲一个字符串添加到列表 
列表  = [ “你好” ] 
#['a','b','c',5,'d','e','h','e','l','l','o','hello'] 
打印(列表) 
#['a','b','c',5,'d','e','h','e','l','l','o','hello','Python '] 
list.append(“ Python” ) 
 
打印(列表) 
 
 
 
 
打印(“ ==============================输入输出函数============ =================== ) 
#input()输入函数 
 
打印(“键入整数!,每个后跟Enter;或使用^ D或^ Z完成” ) 
       
总计=  0 
计数=  0 
 
而True :  
    尝试: 
        line = input("Integer:") 
        if line: 
            number = int(line) 
            total  = number 
            count  =1 
    except ValueError as err: 
        print(err) 
        continue 
    except EOFError: 
        break     
if count: 
      print("count=",count,"total=",total,"mean=",total/count) 
 
 
 
print("================================ 函数的创建与调用 ================================") 
#Python 函数的定义 
def getAge(msg): 
    while True: 
        try: 
            i = int(input(msg)) 
            return i 
        except ValueError as err: 
            print(err) 
 
#Python 函数的调用 
age = getAge("enter you age:") 
print("your age is:",age) 
 
 
#Python 调用系统函数 
 
#导入模块 
#建议先导入系统模块,然后导入第三方模块,最后导入自己编写的模块 
import random 
#随机产生一个[1,6]之间的一个整数 
x = random.randint(1,6) 
#随机产生列表中的一项 
y = random.choice(["a","b","c","d"]) 
 
print("随机产生一个[1,6]之间的一个整数:",x) 
print("随机产生列表['a','b','c','d']中的一项:",y) 
 
 
 
#打印规定行数和列数的随机数 
def getInt(msg,minimum,default): 
    while True: 
        try: 
            line = input(msg) 
            if not line and default is not None: 
                return default 
            i = int(line) 
            if i < minimum: 
                print("must be>=",minimum) 
            else: 
                return i 
        except ValueError as err: 
            print(err) 
 
 
rows = getInt("rows:",1,None) 
columns = getInt("columns:",1,None) 
minimum = getInt("minimum(or enter for 0):",-1000000,0) 
 
default = 1000 
 
if default < minimum: 
    default = 2*minimum 
maximum = getInt("maximum (or enter for" str(default) "):",minimum,default) 
 
 
row = 0 
 
while row < rows: 
    line = "" 
    column = 0 
    while column < columns: 
        i = random.randint(minimum,maximum) 
        s = str(i) 
        while len(s) < 10: 
            s = " "   s 
            line  = s 
            column  = 1 
    print(line) 
    row  = 1 
 
 
print("================================ 标示符与关键字 ================================") 
 
#Python中的_ 
#以_开头和结尾的变量和方法在Python中有特殊的含义,所以我们在定义名称时应该避免这样使用 
 
#_的用法一 
#_存放最后一个被评估的表达式的结果 
for _ in ["a","b","c"]: 
    print(_) 
 
#_的用法二 
#系统定义 如:__init__ 
 
#_的用法三 
#声明私有变量 如__age 
 
 
print("================================ 字符串 ================================") 
#列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢? 
#序列的两个主要特点是索引操作符和切片操作符。 
#索引操作符让我们可以从序列中抓取一个特定项目。 
#切片操作符让我们能够获取序列的一个切片,即一部分序列。 
 
 
#字符串的切片操作 
s = "Hello Python" 
#截取整个字符串 
print(s[:]) 
print(s[0:len(s)]) 
 
#截取前四个字符串 
print(s[:4]) 
print(s[0:4]) 
print(s[0:-8]) 
print(s[-13:-8]) 
 
 
#s[start:end:step] step小于0 表示从反方向开始截取 
#每个3个字符提取一个字符 
print(s[::3]) 
print(s[0:len(s):3]) 
 
 
#字符串的连接 效率对比join()连接 >  连接 >  =连接 
 
#字符串的复制功能* 
print(s*5) 
 
 
print("================================ Python 元组================================") 
 
#元组:元组是有序的序列,支持切片操作,元组定义后不可更改,可以通过下标访问,类似Java中的数组 
#通常用括号将元组括起来 
 
#下面定义一个元组 
hairs = ("black","red","white","brown") 
#可通过下标访问元组的某一项 
#打印white 
print(hairs[2]) 
 
#元组的切片操作 
#打印('black', 'red', 'white') 
print(hairs[0:3]) 
 
 
print("================================ Python 列表================================") 
#列表:列表是有序的序列,支持切片操作,列表可以更改,可以通过下标访问,类似Java中的ArraysList 
#列表通常用中括号定义 
#定义一个列表 
lists = ["a","b","c","d","c"] 
print(lists[0]) 
print(lists[0:3]) 
#将元组转化成列表 
print(list(hairs)) 
#删除lists中的第一项, 
del lists[0] 
#打印["b","c","d"] 
print(lists) 
#删除lists中的第一项,打印'b' 
print(lists.pop(0)) 
#打印["c","d"] 
print(lists) 
 
 
print("================================ Python 字典================================") 
#字典:字典是无序的组合数据类型,以键值对的形式出现,因为字典是无序的,所以不支持索引,也不支持切片,类似Java中的HashMap 
 
#定义一个字典 
dicts = {1:"A",2:"B",3:"C",4:"A"} 
 
 
#由于字典既包含键,又包含值,因此我们可以有多种方式对其进行迭代 
 
#根据key value迭代 
for item in dicts.items(): 
    print("key:",item[0],"value:",item[1]) 
 
 
for key,value in dicts.items(): 
    print("key:",key,"value:",value) 
 
 
#根据key 迭代 
for key in dicts.keys(): 
    print("key:",key,"value:",dicts[key]) 
 
 
#根据value 迭代 
for value in dicts.values(): 
    print("value:",value) 
 
 
#集合:集合也是一种无序的组合数据类型,可以进行交集,并集,等运算,类似Java中的Set 
 
#定义一个集合 
sets = {1,2,4,6,7} 
 
 
#字典内涵,集合内涵,列表内涵,可以是一个表达式 同时也是一个循环 还可以带一个可选的条件、 
l1 = [x for x in lists if x == "c"] 
print(l1) 
#l1,l2两种方式是等价的 
l2 = [] 
for x in lists: 
    if x == "c": 
        l2.append(x) 
 
print(l2) 
 
 
d1 = {k:v for k,v in dicts.items() if v == "A"} 
print(d1) 
#d1,d2两种方式是等价的 
d2 = {} 
for k,v in dicts.items(): 
    if v== "A": 
        d2.setdefault(k,v) 
 
print(d2) 

0 人点赞