python基础语法

最近学习爬虫,重新复习一下python基础语法


base1

'''
1.输入:input,输出类型:print(type(a))
2.强制转换类型 a = int(123)
3.判断if  if/elif/else xxx :
4.随机数 random.randint(0,2)  注意:int,0-2
5.石头剪刀布游戏
'''



password = input("请输入密码:")
print(password) #123
#输出类型 用print(type(a))
a = 10
print(type(a)) #<class 'int'>
b = "abc"
print(type(b)) #<class 'str'>
c = int("123")
print(type(c)) #<class 'int'>

if True:
    print("True")
else:
    print("False")

score = 77
if score >= 90 and score <= 100:
    print("A")
elif score >= 60:
    if score <=80:
        print("B-")
    else:
        print("B+")
else:
    print("c")  #B-

import random
x = random.randint(0,2) #0-2之间的随机数
print(x)

############小游戏
"""
石头剪刀布游戏
要求:显示下面信息:
    请输入:石头(0),剪刀(1),布(2):_
    你的输入为:剪刀(0)
    随机生成数字为:1
    you lose
"""
import random
y = random.randint(0,2)#0,1,2
x = input("请输入:石头(0),剪刀(1),布(2):_")
print(x,y)
if y == x:
    print("平局!")
else:
    if x == 0 and y == 1:
        print("you win!")
    elif x == 0 and y == 2:
        print("you lose!")
    elif x == 1 and y == 2:
        print("you win!")
    elif x == 1 and y == 0:
        print("you lose!")
    elif x == 2 and y == 0:
        print("you win!")
    elif x == 2 and y == 1:
        print("you lose!")
print("your input is:", x)
print("the random is :", y)


base2

'''
1.1 for i in range(5):
        print(i)
1.2 for i in range(0,10,3):
        print(i)   #步长为3
1.3 name = "jiangsu"
    for x in name:
        print(x,end="\t")      #每次打印后面加了一个空格。

2.1 while i < 5:
        print(i)
        i += 1
2.2 while i < 5:
        print(i)
        i += 1
    else:
        print("end")      #类似if,但是还有while功能

3 break,continue,pass
    break:跳出for 和 while 的循环体
    continue: 跳出当前循环,进入下一次循环
    pass :空语句,值班用做占位语句,不做任何事情


'''

a = ["aa", "bb", "cc", "dd"]
for i in range(len(a)):   #len 数组长度
    print(i, a[i])

i = 0
while i < 6:
    print("第%d次执行循环"%(i+1))
    print("i = %d"%i)
    i += 1

###求和:0-100
i = 1
sum = 0
while i <= 100:
    sum += i
    i += 1
print(sum)

base3

'''
1.1 字符串  a = "abc"
          b = "啊啊啊"
          c = 三个双引号
          字符段1
          字符段2
          三个双引号
1.2 str = "abcdefg"
    print(str)
    print(str[0])
    print(str[0:3])    #[起始位置:结束位置]
    print(str[1:])     #从第二个开始,一直到最后
    print(str[:5])     #第一个到第五个
    print(str[1:5:2])  #[起始位置:结束位置: 步进值]
1.3 字符串连接:
    str = "abc"
    print(str + "hello")
    print(str * 3)      #连续打印3次
1.4 注意一些常用的函数,库

2.1 列表 (可以混着加,既有int也有str)
    list = ["abc","123","啊啊啊","0.251"]
    list2 = [123,'abd']
    print(list + list2)
2.2 list 可以用负数下标,从后往前
2.3 列表的切片: list[2:5:2]  [开头:结尾:步进]
2.4 增删改查:
        新增加到列表尾部:  nametemp = input("请输入增加的名字")       list.append(nametemp)
        列表的追加,扩展:   list2 = ["def","zx12"]                 list.extend(list2)
        列表的插入:       1表示坐标,3表示插入的元素                  list.insert(1,3)
        元素的删除:       删除list的第三个元素                       del list[2]
                         or 弹出末尾                              list.pop()
                         or 弹出指定的元素                         list.pop(2)
                         or 删除指定元素                          list.remove("具体内容")
        列表的更改,替换:  指定下标进行修改                           list[1] = "cfd"
        列表从查询:       查找下标1-6内有没有”a“ ,打印出下标来          print(list.index("a", 1 , 4))      找不到会报错!
        统计"a"出现了几次:                                         print(list.count("a"))
        将列表的所有元素反转:                                       list.reverse()                      是个功能函数,不是变量哦
        排序                  升序                                list.sort()
                             倒序                                list.sort(reverse = True)
2.5 list的嵌套 list4=[["123","234"],["abc","sdf"],["2.2","abc"]]
     print(list4[0][0])  #123

3.1 元组 Tuple 不能修改的!!
    tuple = ("abc",12,10.5,"runb")
    Tuple 元素不可变,但是可以包含可变的对象,如list
    只有一个元素时,要加逗号: tuple = (1,)
    可以用负数做下标: tuple[-1]  :最后一个元素
    Tuple做切片:
        tuple[1:5] 左闭右开
        tuple[1:]
        ...
3.2 元组的增删改查:
    增加:只能时 tup3 = tup1 + tup2     (连接上)
    删除:del tup1   整个删除了。

4.1 字典
    dict
    d = {'abc':95,'efg':85,'hjs':62}
    print(d['abc']) #95
4.2 要是字典里没有存’ggg‘:
        print(d['ggg']) 会报错,应该用:
        print(d.get('ggg'))
4.3 增删改查:
    增加:
        newScore = input("请输入新的分数")
        d['ggg'] = newScore
    删除:
        del d['ggg']
        del d  整个都删掉了
        d.clear()
        clear与del的区别时:没有删掉指针,而是把数据删掉了,字典还在
    修改:
        d['ggg'] = 20
    查询:
        key查询:    d.keys()    列表形式
        values查询: d.values()   list形式
        项查询:     d.items()    元组形式

5.1集合 set  只看元素,没有顺序。
    s = set([1,2,3])
    print(s) #{1,2,3}
    s2 = set([1,1,2,2,3,3])
    print(s2) #{1,2,3}
 b

'''



print("helloab")
print("hello\nab")
print(r"hello\nab")  #加个r.后面内容全部显示出来,没有\n转义的功能了

list = ["abc","123","啊啊啊","0.251"]
list2 = [123,'abd']
print(list + list2)

for index in list:
    print(index)  #会自动转换
list.pop()
print(list)
list.append("又加上一个")
print(list)
list.pop(2)
print(list)
print(list.count("abc"))
list3 = [1, 2, 3, 4]
list3.reverse()
print(list3)
list3.sort()
print(list3)
list3.sort(reverse=True)
print(list3)
list4=[["123","234"],["abc","sdf"],["2.2","abc"]]
print(list4[0][0])
'''
8个人,随机分配到3个办公室
'''
import random
office = [[],[],[]]
names = ["A","B","C","D","E","F","G","H"]
print(office)
for i in names:  #注意:此处的i不是c或者Java的i,而是表示成一个元素,所以一般用name: for name in names:...
    index = random.randint(0,2)
    office[index].append(i)

print(office)

#dict
d = {'abc':95,'efg':85,'hjs':62}
print(d['abc']) #95
#print(d['ggg']) #error
print(d.get('ggg')) #none
newScore = input("请输入新的分数")
d['ggg'] = newScore
print(d['ggg'])
del d['ggg']
print(d.get('ggg')) #none
print(d.keys())
print(d.values())
print(d.items())
d.clear()
print(d) #{}  没有删掉指针,而是把数据删掉了,字典还在

'''
1.0 函数
    def 函数名():
        ...
1.1 带参数的
    def 函数名(a,b):
        ...
        return c
1.2 返回多个参数的: 和其他编程语言不同的是,可以返回多个值
    def 函数名(a,b):
        ...
        return c, d

    g,f = 函数名(a,b)   #一定要有多个值来接受返回内容

2.0 文件操作
2.1 打开文件   (默认是在当前文件的路径下)
    f = open("文件名字", "w")  #要是不存在,就新建一个,因为是'w'
    f.write("abc")
    f.close()                #关闭文件
    f = open("test.txt", "r")
    content = f.read(5)      #读取五个字符
    content = f,readlines()   #读所有行,读完所有文档     全部作为列表
    f.close()

2.2 访问模式:
    r      只读,指针放在开头,默认方式.文件不存在则报错
    w      只写,若没有,就新建一个,若存在,就将其覆盖
    a      打开一个文件并追加,放在结尾,若没有就新建。
    rb     只读,用二进制读
    wb     同上,用二进制写入

2.3 重命名文件名:
    import os
    os.rename("old name","new name")

2.4 删除文件:
    import os
    os.remove("name")


'''
import os
f = open("test.txt", "w")
f.write("hello!word")
f.close()
f = open("test.txt", "r")
content = f.read(5)   #读取五个字符
print(content)        #hello
content = f.read(5)   #再读五个     指针在o
print(content)        #!word
f.close()
os.remove("test.txta")
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值