欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python学习:基本语法

程序员文章站 2023-12-31 23:20:10
1.1 输入输出print("hello python")print("a", "b", "c")print("hello python", end='')a = int(input('请输入一个数字:')) # input返回值类型是字符串print(a)print(type(a)) # type函数:查看a的数据类型b = input("输入一个数字:")print(b+4) # 报错(字符串不能与数字相加)运行....

1.1 输入输出

print("hello python")
print("a", "b", "c")
print("hello python", end='')

a = int(input('请输入一个数字:'))     # input返回值类型是字符串
print(a)
print(type(a))        # type函数:查看a的数据类型
b = input("输入一个数字:")
print(b+4)                      # 报错(字符串不能与数字相加)

 运行结果:

hello python
a b c
hello python请输入一个数字:20
20
<class 'int'>
输入一个数字:20
Traceback (most recent call last):
  File "H:/hobby/python/python/helloPython.py", line 11, in <module>
    print(b+4)  # 报错
TypeError: can only concatenate str (not "int") to str

 

1.2 格式化输出

a = 'kitty'
print('hello,{}'.format(a))
b = 25
c = '中国人'
print('我今年{}岁,我是{}'.format(b,c))
d = 0.345
print('d保留两位小数是:{:.2f}'.format(d))       # d保留两位小数

 运行结果:

hello,kitty
我今年25岁,我是中国人
d保留两位小数是:0.34

 

1.3 注释

单行: #
多行: '''或"""

 

1.4 缩进

# 相同缩进语句 属于同一个语句块
for i in range(10):
    print(i, end=' ')
    print(i, end=' ')
print()
for i in range(10):
    print(i,end=' ')
print(i)

a = 0;
if a == 1:
    print(a)
print("no")

def add():
    a = 1
    b = 3
    return a+b

 运行结果:

0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 
0 1 2 3 4 5 6 7 8 9 9
no

 

1.5 操作符

print(10/3)
print(10//3)   #整除
算数运算符 + - * / // %  **(幂运算)
比较运算符 > < >= == !=
逻辑运算符 or  and  not
赋值运算符 = += %= -=
成员运算符 in   not in
print('hello' in 'hello word')
print('hello' not in 'hello word')

 

1.6 变量名规范

_a = 1  变量
a = 1
def get_date_from_model():  函数
class MyClassNumber:  类

 

1.7 数据类型

#  1)Number数字(不可变)
#  2)String字符串(不可变)
#  3)List列表
#  4)Tuple元组(不可变)
#  5)Set集合
#  6)Dictionary字典

# 不可变与可变类型对比
a = 343
print(id(a))
a=344
print(id(a))   # 两次输出a的id值是不同的
a = 'hello'
print(id(a))
a += 'world'
print(id(a))     # 两次输出a的id值是不同的
# 因为数字与字符串是不可改变的数据类型,所以改变值之后,就变成了另一个变量存放在另一个位置(变成另外一个变量)

a = [1, 2, 3]
print(a)
print(id(a))
a.append(4)
print(a)
print(id(a))    # 两次输出a的id值是相同的
# 因为列表是可改变的数据类型,所以改变值之后,还是存放在原来的地址(仍然是原来的那个变量)

# 数字:
a = input("输入第一个数字:")
b = input("输入第二个数字:")
print(a+b)          # 输出34

 运行结果:

3005260231728
3005260231760
3005260017072
3005260324784
[1, 2, 3]
3005258748424
[1, 2, 3, 4]
3005258748424
输入第一个数字:3
输入第二个数字:4
34

 

1.8 字符串

s0 = 'it\'s a dog'
s1 = "it's a dog"
print(s1)
s2 = "hello"
s3 = '''hello'''
# 三引号的两个作用:1、注释:函数注释、类的注释  2、字符串长字符保持格式
s4 = 'ssssssssssssssssssssssssssssssssssssssssssssss' \
     'ssssssssss' \
     'sss' \
     's'
print(s4)  # 打印出来为一行

s5 = '''
ssssssssssssssssssssssssssssssss
sssssssssssssssss
ssss
'''
print(s5)  # 打印出来为多行

s6 = r"E:\soft\apache\ssss"
print(s6)

 运行结果:

it's a dog
ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss

ssssssssssssssssssssssssssssssss
sssssssssssssssss
ssss
E:\soft\apache\ssss

 

1.9 字符串截取

# 字符串截取
# 格式:[start:end:step]
# [:] 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串
# [start:]从start提取到结尾
# [:end]从开头提取到end-1
# [start:end]从start提取到end-1
# [start:end:step]从start提取到end-1,每step个字符去一个

s = '欢迎来 到XX学院 学习python'
print(s[:])
print(s[2:])
print(s[-2:])
print(s[:-2])  #取不到-2
print(s[:3])   #取不到3
print(s[2:-1])
print(s[0:-1:2])
print(s[-1:0:-2])
print(s[::-1])
# step为正表示正序切片,为负表示逆序切片

 运行结果:

欢迎来 到XX学院 学习python
来 到XX学院 学习python
on
欢迎来 到XX学院 学习pyth
欢迎来
来 到XX学院 学习pytho
欢来到X院学pto
nhy习 学X 迎
nohtyp习学 院学XX到 来迎欢

 

1.10 操作字符串函数

# 操作字符串函数
# 1、len(string)
# 2、replace(old,new[max])
# 3、split(str='')
# 4、strip(str):删除字符串两边空格
# 5、str.islower str是否为小写 str.isupper str是否为大写
# 6、str.lower  str.upper 字符串转换为小写或大写
# 7、','.join['a', 'b', 'c']: 连接

s = '欢迎来 到XX学院 学习python'
print(s.replace('python', 'java'))
print(s.split())
name = input('请输入用户名:')
if len(name.strip()) >= 6:
    print('ok')
else:
    print('not ok')

a = ['hello', 'world', 'ok', 'good']
result = ''
for item in a:
    result += item
    result += ','
print(result)
print(','.join(a))

 运行结果:

欢迎来 到XX学院 学习java
['欢迎来', '到XX学院', '学习python']
请输入用户名:LLLLeozi
ok
hello,world,ok,good,
hello,world,ok,good

 

练习一:

1、输入一个半径,计算出圆的面积和周长
2、输入两个数字a和b,计算a与b之和与a与b只差的成绩
3、输入两个数字a和b,计算出a的b次方再除以b取整后的值
from math import pi
r = float(input("请输入半径:"))
print(pi*r*r)
print(2*pi*r)

a = int(input("请输入数字a:"))
b = int(input("请输入数字b:"))
print((a+b)*(a-b))

c = int(input("请输入数字c:"))
d = int(input("请输入数字d:"))
mi = c**d;
print(mi//d)

 运行结果:

请输入半径:2
12.566370614359172
12.566370614359172
请输入数字a:3
请输入数字b:4
-7
请输入数字c:5
请输入数字d:6
2604

 

练习二:

1. s = "'hello, world'",要求以-1为步长,将字符串内容去掉单引号后反序输出,显示结果为:dlrow ,olleh
2. 直接定义一个字符串'adc kdn lad',分别打印出以d分割的字符串的第二部分和第三部分。
3. 接收用户输入一个句子(只包含字母和空格),利用字符串方法将句子中的单词位置反转,单词用空格分割,单词之间只有一个空格,前后没有空格。比如,输入“hello xiao mi”-> 得到“mi xiao hello”
# 题目1
str1 = "'hello, world'"
print(str1.strip('\'')[::-1])

# 题目2
str2 = 'adc kdn lad'
print('以d分割字符串的第一部分:', str2.split('d')[1])
print('以d分割字符串的第二部分:', str2.split('d')[2])

# 题目3
# 方法一
str3 = input("请输入一个包含字母和空格的句子:")
str3 = str3.strip().split(' ')
# str3 = str3.split(' ')
for item in str3[::-1]:
    print(item, end=' ')

# 方法二
# str3.reverse()
# print(str3)

# 方法三
# str3 = input("请输入一个包含字母和空格的句子:")
# print(' '.join(str3.split()[::-1]))

运行结果:

dlrow ,olleh
以d分割字符串的第一部分: c k
以d分割字符串的第二部分: n la
请输入一个包含字母和空格的句子: askdjaks askdj asd 
asd askdj askdjaks 

 

 

本文地址:https://blog.csdn.net/qq_41481731/article/details/107324786

上一篇:

下一篇: